Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将任何验证控件传递给方法?_C#_Asp.net - Fatal编程技术网

C# 如何将任何验证控件传递给方法?

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

我正在使用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 + "*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

希望这有帮助