MVC中模型对象与模型状态之间的差异

时间:2018-12-02 04:49:52

标签: asp.net-mvc

所以我想知道是否有人可以简要解释一下模型对象和模型状态之间的区别,谢谢!

1 个答案:

答案 0 :(得分:1)

Model只是一个包含属性的类,该属性表示应用程序中的某些对象。在MVC中,您可以使用DataAnnotations装饰属性,该属性可用于验证模型。

例如

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

    [Required]
    public string LastName { get; set; }
}
顾名思义,

ModelState是模型的状态,就好像它是有效的一样。 MVC管道使用放置在模型属性中的DataAnnotations验证模型。这就是为什么您会在控制器中遇到许多if(ModelState.IsValid)调用以确保提交给控制器的数据有效的原因。