C# 验证属性不起作用

C# 验证属性不起作用,c#,asp.net,asp.net-web-api,C#,Asp.net,Asp.net Web Api,我在asp.NETWebAPI项目中工作。我创建了一个ValidationAttribute类,如 public class MyValidationAttribute: ValidationAttribute { private int _Id { get; set; } public MyValidationAttribute(int Id) { _Id = Id; } protected override ValidationRes

我在asp.NETWebAPI项目中工作。我创建了一个ValidationAttribute类,如

public class MyValidationAttribute: ValidationAttribute
{
    private int _Id { get; set; }
    public MyValidationAttribute(int Id)
    {
        _Id = Id;
    }

    protected override ValidationResult IsValid(object value, ValidationContext validationContext)
    {
        object abc = value;
        if (_Id > 10)
            return ValidationResult.Success;
        return base.IsValid(value, validationContext);
    }
}
在那之后,我在一个函数上使用它

[MyValidationAttribute(12)]
public object MyFunction(int Iden){
//Some code here
}

问题是,在调试模式下,我可以看到控件没有解析MyValidationAttribute类。我做错什么了吗?

应该在属性上使用数据属性

将其改为以下内容:

[MyValidationAttribute(12)]
public int MyProperty { get; set; }