【发布时间】:2015-07-05 06:31:43
【问题描述】:
我有一个实体子类的属性,我想验证它是否为空。
我无法使用[Required] 属性对其进行注释,因为EF 解析器会根据需要对其进行解释。我只希望这种类型需要它(它是一个继承的实体)。
事情是我在我的项目中使用显示资源,我希望从资源中检索属性名称和错误消息。
实体实现了IValidatableObject,所以我想添加Validator.TryValidateObject并自动获取自定义的验证错误,但它需要一个ValidationContext的实例,我想使用它的constructor,需要一个Dictionary<object, object>,我不确定它需要什么论据。我确定这是我正在寻找的构造函数,因为我正在寻找一种方法来指定实例和成员名称,以便验证器自动提取显示变量。
我不介意以任何其他方式这样做,但我更喜欢一种开箱即用的方式,系统关心使用属性的显示名称和从资源。
无论如何,我想问一下,Validator 类如何在内部获取显示名称?是否有任何此功能公开?
另一个问题是ValidationContext 如何在内部设置MemberName?我可以自己构造这样的ValidationContext吗?
【问题讨论】:
标签: c# entity-framework data-annotations validationattribute