Это проблема с обслуживанием кода как проблема с кодом, но у меня есть WebForm, который больше не проверяет его CustomValidator. Он работал, когда я последний раз коснулся кода больше года назад, но теперь он больше не работает, когда пользователь запросил некоторые изменения ...Что вы подозреваете, когда ASP.NET игнорирует CustomValidator?
WebForm содержит раскрывающийся список данных с по умолчанию «- Все» - item с параметром String.Empty. Когда пользователь нажимает кнопку отправки, валидатор должен проверить, что выпадающее значение не является String.Empty. Я установил точки останова в код проверки клиента и код проверки сервера, но не огонь.
Где бы вы хотели начать поиск? Каковы обычные подозреваемые? Я, конечно, сравнивал свою рабочую копию с тем, что находится в контроле источника, но ничего не выказывает, как подозрительное.
Только в случае, если это имеет значение, вот мой код:
<asp:DropDownList ID="_AssessmentDropDown" runat="server" DataSourceID="_AssessmentsData" CausesValidation="true" AutoPostBack="false"
DataTextField="AssessmentName" DataValueField="AssessmentName" OnDataBound="_HandleAssessmentsBound">
</asp:DropDownList>
<asp:CustomValidator ID="_AssessmentValidator" runat="server" ClientValidationFunction="_HandleValidateAssessment_Client"
ControlToValidate="_AssessmentDropDown" ErrorMessage="* You must select an Assessment."
OnServerValidate="_HandleValidateAssessment" />
<asp:ObjectDataSource ID="_AssessmentsData" runat="server"
OldValuesParameterFormatString="original_{0}" SelectMethod="GetData"
TypeName="DataTableAdapters.GET_GRADE_ASSESSMENTSTableAdapter">
<SelectParameters>
<asp:ControlParameter Name="GRADECODE" ControlID="_GradeCodeDropDown" PropertyName="SelectedValue" />
</SelectParameters>
</asp:ObjectDataSource>
ValidateEmptyText делает трюк, но мне интересно, почему в прошлом году это не было проблемой. Изменено поведение ValidateEmptyText? Если нет, мое значение по умолчанию должно быть изменено. – flipdoubt 2008-11-11 19:54:36