我接管了通过WCF服务进行调用的站点的维护。验证摘要显示在客户端的某些验证器的消息框中。如果我的Web服务调用出现任何异常,我也会触发一个标签。在调整布局后,标签位于一个不方便的位置。我想知道是否有一种方法可以在验证摘要中显示标签文本,如果代码背后的异常触发。
感谢任何建议。
cs文件中的示例:
bool ResultUserExistence = register.CheckUniquenessUserID(txtUserId.Text);
if (ResultUniquenessEmail == null)
{
continue through code...
}
else
{
lblException.Text = "Please choose a different user name. The current user name is already registered.";
}
验证摘要:
<asp:ValidationSummary ID="valSummary"
runat="server"
HeaderText="Please correct the following error(s):"
DisplayMode="List"
ForeColor="#FF9999"
ShowMessageBox="True"
ShowSummary="False" />
答案 0 :(得分:3)
如this answer中所述,您可以创建自定义验证程序,并在其上设置消息,这将使消息显示在验证摘要中。
bool ResultUserExistence = register.CheckUniquenessUserID(txtUserId.Text);
if (ResultUniquenessEmail == null)
{
continue through code...
}
else
{
var err As new CustomValidator()
err.ValidationGroup = "UserUniqueness";
err.IsValid = False;
err.ErrorMessage = "Please choose a different user name. The current user name is already registered.";
Page.Validators.Add(err);
}
理想情况下,这将被考虑为可重用性的方法。