我正在使用ASP.NET和C#创建一个webform。我创建了一个发布错误消息的方法,该消息由Validation Summary控件获取。
protected void PostErrorToCusVal(ref System.Web.UI.WebControls.CustomValidator ErrorObj, string ErrHead, string ErrMsg) {
ErrorObj.ErrorMessage = "*SomeHTML/CSS*" + ErrHead + "*SomeHTML/CSS*" + ErrMsg + "*SomeHTML/CSS*";
}
我无法将除CustomValidator控件之外的任何内容传递给它。我希望能够将任何验证控件传递给它并设置ErrorMessage属性。我尝试使用BaseValidator和强制转换,但这不起作用。是否可以这样做?
谢谢, 奥兹
答案 0 :(得分:0)
您也可以编写如下的辅助方法,这种方法更通用,可以在许多地方使用
public static void AddExceptionMessageAsValidator(Page page, Exception ex, string message, string validationGroup)
{
CustomValidator exValidator = new CustomValidator();
exValidator.IsValid = false;
if (message != null)
exValidator.ErrorMessage = message;
else
exValidator.ErrorMessage = ex.Message;
exValidator.Text = String.Empty;
if (!String.IsNullOrEmpty(validationGroup))
exValidator.ValidationGroup = validationGroup;
page.Validators.Add(exValidator);
}
使用它时,只需传递Page,Exception,Message(如果有的话)来覆盖异常消息,以及页面的验证组。
希望这有帮助