csharp dto_Address的自定义验证器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了csharp dto_Address的自定义验证器相关的知识,希望对你有一定的参考价值。

using System.ComponentModel.DataAnnotations;

namespace Springsteen.WebApi.Contract
{
    public class RequiredUnlessSeqNumAttribute : ValidationAttribute
    {

        protected override ValidationResult IsValid(object value, ValidationContext validationContext)
        {
            int seqNum;
            if (int.TryParse(validationContext.ObjectType.GetProperty("seqNum").GetValue(validationContext.ObjectInstance, null).ToString(), out seqNum))
            {
                if (seqNum == 0)
                {
                    // enforce required-ness
                    if (value == null)
                    {
                        return new ValidationResult(FormatErrorMessage(validationContext.DisplayName));
                    }
                }  
            }

            return null;
        }

    }
}

以上是关于csharp dto_Address的自定义验证器的主要内容,如果未能解决你的问题,请参考以下文章

csharp 使用Log4net日志记录的自定义Web API过滤器。

csharp 通用检查器类,它允许您在类文件中而不是在单独的自定义编辑器中实现OnScene / InspectorGUI。它也提供

csharp 自定义需要可能与dict一起使用的验证器。

csharp 自定义JsonServialize验证

csharp MaxWords自定义验证注释属性

C#9引入的自定义类型record