我在我的一个 Web 表单上使用自定义验证器,要求是检查数据库中的 bookcode,如果它存在,那么它应该显示消息,现在我正在使用自定义验证器,我想要的是,它如果自定义验证器返回 false,则不应回发,而是应该像普通验证器一样工作并显示消息,我正在为自定义验证器使用服务器端验证。我的代码在这里。
HTML Markup
<asp:TextBox ID="BookCode" runat="server" CssClass="textEntry"></asp:TextBox>
<asp:CustomValidator ID="BookCodeCustomValidator" runat="server" ControlToValidate="BookCode" CssClass="failureNotification fr"
Display="Dynamic" ErrorMessage="Book already exists (Book Code should be unique)." OnServerValidate="ServerValidation"
ToolTip="Book already exists (Book Code should be unique)." ValidationGroup="AddFacBookValidationGroup"></asp:CustomValidator>
这是我背后的代码
protected void ServerValidation(object sender, ServerValidateEventArgs e)
{
objAddBooks.LibraryInfo = Transactions.LibraryFields.Bookcode;
objAddBooks.Criteria = BookCode.Text;
e.IsValid = (objAddBooks.BookExists) ? false : true;
}