WebAPI - 如何在操作/请求之外调用模型验证?

时间:2015-10-13 09:52:31

标签: asp.net-web-api

有没有人知道如何通过模型状态验证机制简单地运行模型实例?

我只想将系统重用于不同的东西。我有一些模型,我读取配置文件,我想用数据注释属性装饰它们,并验证配置文件是否正确设置。

1 个答案:

答案 0 :(得分:1)

然后你想运行System.ComponentModel.DataAnnotations.Validator。我认为这是引擎盖下的所谓。

假设您有这样的课程:

public class Customer
{
    [Required]
    public string FirstName { get; set; }
}

然后,您可以通过运行以下代码来验证此对象:

[Test]
public void Test()
{
    var customer = new Customer();
    var results = new List<ValidationResult>();
    var valid = Validator.TryValidateObject(customer, new ValidationContext(customer), results, true);

    valid.ShouldBe(false);
    results.Count.ShouldBe(1);
}