C# 如何将任何验证控件传递给方法?
我正在使用ASP.NET和C#创建一个Web表单。我创建了一个发布错误消息的方法,该消息由Validation Summary控件拾取C# 如何将任何验证控件传递给方法?,c#,asp.net,C#,Asp.net,我正在使用ASP.NET和C#创建一个Web表单。我创建了一个发布错误消息的方法,该消息由Validation Summary控件拾取 protected void PostErrorToCusVal(ref System.Web.UI.WebControls.CustomValidator ErrorObj, string ErrHead, string ErrMsg) { ErrorObj.ErrorMessage = "*SomeHTML/CSS*" + ErrHead + "*Som
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和casting,但那不起作用。有可能做到这一点吗
谢谢,
Ozzy您也可以编写一个助手方法,如下所示,这将更加通用,可以在许多地方使用
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);
}
要使用它,只需传递页面、异常、消息(如果有)以覆盖异常消息和页面的validationgroup
希望这有帮助您也可以编写一个助手方法,如下所示,它将更通用,可以在许多地方使用
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);
}
要使用它,只需传递页面、异常、消息(如果有)以覆盖异常消息和页面的validationgroup
希望这有帮助