添加validation很容易,例如RequiredAttribute
作为属性开发时间:
[Required, StringLength(100)]
public string Title {get; set;}
但是,如果我的模型是一个实体(EF Core模型的一部分,使用流畅的EF Core API进行了描述),并且我想在运行时从EF Core模型中提取验证信息(顺序,字符串长度,自定义注释)?如何为Title
字段添加验证规则(并且不使用属性修饰实体,这意味着避免验证信息重复)?
我可以尝试使用反射将属性添加到每个实例,这可能有效,但是我只是在搜索替代验证API。真的不存在吗?
我当然可以通过标准验证,创建自己的验证功能并将错误加载到ModelState
中,但是然后我松开了jquery-validation-unobtrusive
客户端验证配置。
答案 0 :(得分:1)
如何为“标题”字段添加验证规则(并且不要用属性来修饰实体,这意味着避免验证信息重复)?
实施IClientModelValidator
interface。然后对要构建jQuery验证的任何模型使用反射。
没有任何自动,企业,n层em>框架可以立即实现您想要的功能。
我只是希望应该有替代的验证配置API。
我相信asp.net-core-mvc和entity-framework都使用Validator Class。默认情况下,它可以针对IValidatableObject interface(基于非属性的验证)进行验证。