Периодическая ошибка с CompareValidator - Свойство ValueToCompare имеет значение «»

У меня есть страница с CompareValidator:

<asp:textbox id="txtResponseDate" runat="server" />
<asp:requiredfieldvalidator id="rfvResponseDate" runat="server"
                        controltovalidate="txtResponseDate"
                        display="Dynamic"
                        errormessage="Date is required."
                        setfocusonerror="true">
                    </asp:requiredfieldvalidator>
<asp:comparevalidator id="cmvDate" runat="server"
                        controltovalidate="txtResponseDate"
                        display="Dynamic"
                        errormessage="Date must not be before today."
                        operator="GreaterThanEqual"
                        setfocusonerror="true"
                        type="Date">
                    </asp:comparevalidator>

В приведенном ниже коде мы устанавливаем свойство ValueToCompare следующим образом:

If Not IsPostBack Then

    cmvDate.ValueToCompare = DateTime.Now.ToString("d")   

End If

Периодически (мы не можем различить шаблон), мы получаем следующую ошибку:

«Значение» »свойства ValueToCompare для« cmvDate »не может быть преобразовано в тип« Date ».»

Со стеком вызовов :

at System.Web.UI.WebControls.CompareValidator.ControlPropertiesValid() 
at System.Web.UI.WebControls.BaseValidator.get_PropertiesValid() 
at System.Web.UI.WebControls.BaseValidator.Validate() 
at System.Web.UI.Page.Validate() 
at System.Web.UI.Page.Validate(String validationGroup) 
at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) 

Моей первой мыслью было что-то странное с форматом даты, но мы используем даты в Великобритании, последняя ошибка была 18 июля, поэтому ValueToCompare устанавливается на 18.07.2011. Я установил это вручную с помощью отладчика, и он работал нормально. У кого-нибудь есть какие-нибудь блестящие идеи относительно того, почему это может происходить?

  1. Я проверил код - больше нигде это не устанавливается.
  2. Используя отладчик, я дважды проверил при обратной передаче, и как ожидалось , значение этого свойства сохраняется.
5
задан VMAtm 19 July 2011 в 18:56
поделиться