嗨我有这个自定义验证属性:
public sealed class TestValidation : ValidationAttribute
{
public TestValidation ()
{
}
}
并像这样使用它:
public class Test
{
[TestValidation]
public DateTime? DateUpdated { get; set;}
}
我有这样的JSON值:
{ "DateUpdated": "abcdefg" }
由于“abcdefg”不是有效的DateTime格式,它会自动将其转换为null,因为目标数据类型为Nullable。是否可以在TestValidation类上获取原始值(abcdefg)?
答案 0 :(得分:2)
您需要覆盖IsValid方法。
这是你应该做的事情。
public sealed class TestValidation : ValidationAttribute
{
protected override ValidationResult IsValid(object value, ValidationContext validationContext)
{
//value contains the value of datetime 'DateUpdated' (abcdefg)
}
}