我有一个这样的课:

[CustomValidation(typeof(Validate_Class_MetaData), "Validate")]
public class tbl_MetaData
{
     [Required(ErrorMessage = "-...")]
    [Range(1, Int64.MaxValue, ErrorMessage = "-...")]
    public global::System.Int64 Id { set; get; }

    ...
}


我想使用另一个类来验证我的班级:

public class Validate_Class_MetaData
{
    public static ValidationResult Validate (tblData tbl, ValidationContext vc)
    {


问题是我有一些带有错误的警告。我的意思是一些业务规则而不是错误,我想使用对话框向用户显示警告,如果用户希望使用该警告保存记录。现在,我无法使用ValidationResult返回复杂对象。

我如何一起返回ValidationResult.Success和一些警告?

谢谢

最佳答案

不幸的是,ValidationResult类仅支持成功或失败。从链接(重点是我的):


  如果成员的值成功验证,则返回
  ValidationResult对象等于成功字段的值。至
  确定验证是否成功,您应该检查
  返回的对象等于成功。如果成员的值不
  验证,返回的ValidationResult对象包含错误
  消息和验证错误的成员名称集合,如果
  它们可以被检索。


例如,您可以通过使用专用的警告元素并向其中添加文本来实现自己的警告,但是ValidationResult不支持消息或警告。

关于c# - 返回一个复杂的对象,而不是CustomValidation中的ValidationResult,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12071135/

10-10 11:06