我正在尝试编写自己的自定义验证属性,但我遇到了一些问题.
namespace Data.Attributes { public class ComparePassword : ValidationAttribute { public string PasswordToCompareWith { get; set; } public override bool IsValid(object value) { if (PasswordToCompareWith == (string)value) { return true; } return false; } }
[required] [ComparePassword(PasswordToCompareWith=ConfirmPassword)] public string Password { get; set; } [required] public string ConfirmPassword { get; set; } }
我收到以下错误:
Error 1 An object reference is required for the non-static field,method,
or property ‘Project.Data.Models.GebruikerRegistreerModel.ConfirmPassword.get’
似乎VS不接受PasswordToCompareWith = ConfirmPassword部分中的确认密码.
我究竟做错了什么?
解决方法
很抱歉让您失望,但使用数据注释处理像您这样的简单案例可能会很痛苦.你可以看看
this post.