jjzjj

ValidationContext

全部标签

c# - 使用 System.ComponentModel.DataAnnotations.Validator 验证属性

我的实体设置为DataAnnotation验证属性,我正在尝试使用静态Validator对其进行验证类,但我得到不同的异常,这不是正确的方法吗:string_ValidateProperty(objectinstance,stringpropertyName){varvalidationContext=newValidationContext(instance,null,null);validationContext.MemberName=propertyName;varvalidationResults=newList();varisValid=Validator.TryValida

c# - ASP.NET MVC3 : Set custom IServiceProvider in ValidationContext so validators can resolve services

2012年12月18日更新由于这个问题似乎有很多观点,我应该指出,接受的答案不是我使用的解决方案,但它确实提供了构建解决方案的链接和资源,但是,对我来说请注意,这不是理想的解决方案。我的回答包含MVC框架标准部分的替换;并且您应该只在您愿意检查它们是否仍适用于future版本时才使用它们(一些私有(private)代码已从官方来源中删除,因为基类中没有足够的可扩展性)。不过,我可以确认这两个类也适用于Asp.NetMVC4和3。也可以为Asp.NetWebAPI框架重复类似的实现,这是我最近完成的。结束更新我的类型有很多“标准”验证(必需等),但也有一些自定义验证。某些验证需要获取服务

c# - 实现 IValidatableObject 时 ValidationContext 的目的是什么

我已经多次实现IValidatableObject并且从未发现将ValidationContext解析为Validate方法的目的是什么-我的典型IValidatableObject实现看起来像这样:publicIEnumerableValidate(ValidationContextvalidationContext){if(Prop1==Prop2){yieldreturnnewValidationResult("Prop1andProp2mustbedifferent.",new[]{"Prop1","Prop2"});}}有没有什么我可以使用validationContext来

c# - 多个字段的 MVC 表单验证

为了验证目的,我将如何将MVC3表单上的多个文本框视为一个文本框?这是一个简单的电话号码字段,其中一个文本框用于区号,一个用于前缀,一个用于最后四位数字。实际上有两个验证要求:1)它们都是必需的。2)它们必须都包含整数。现在对单个字段执行此操作很简单,但我如何使用MVC创建ASP.NETCustomValidator的等效项,以便我可以整体验证所有三个字段? 最佳答案 实际上,我最终实现了自定义ValidationAttribute来解决这个问题,使用CompareAttribute中提供的相同类型的逻辑,允许您使用反射来评估其他值

c# - 多个字段的 MVC 表单验证

为了验证目的,我将如何将MVC3表单上的多个文本框视为一个文本框?这是一个简单的电话号码字段,其中一个文本框用于区号,一个用于前缀,一个用于最后四位数字。实际上有两个验证要求:1)它们都是必需的。2)它们必须都包含整数。现在对单个字段执行此操作很简单,但我如何使用MVC创建ASP.NETCustomValidator的等效项,以便我可以整体验证所有三个字段? 最佳答案 实际上,我最终实现了自定义ValidationAttribute来解决这个问题,使用CompareAttribute中提供的相同类型的逻辑,允许您使用反射来评估其他值

c# - ASP.NET MVC : Custom Validation by DataAnnotation

我有一个具有4个字符串类型属性的模型。我知道您可以使用StringLength注释来验证单个属性的长度。但是我想验证4个属性的组合长度。使用数据注释执行此操作的MVC方法是什么?我问这个是因为我是MVC的新手,想在制定自己的解决方案之前以正确的方式进行操作。 最佳答案 您可以编写自定义验证属性:publicclassCombinedMinLengthAttribute:ValidationAttribute{publicCombinedMinLengthAttribute(intminLength,paramsstring[]pro

c# - ASP.NET MVC : Custom Validation by DataAnnotation

我有一个具有4个字符串类型属性的模型。我知道您可以使用StringLength注释来验证单个属性的长度。但是我想验证4个属性的组合长度。使用数据注释执行此操作的MVC方法是什么?我问这个是因为我是MVC的新手,想在制定自己的解决方案之前以正确的方式进行操作。 最佳答案 您可以编写自定义验证属性:publicclassCombinedMinLengthAttribute:ValidationAttribute{publicCombinedMinLengthAttribute(intminLength,paramsstring[]pro