如何验证嵌套模型

本文关键字:嵌套 模型 验证 何验证 | 更新日期: 2023-09-27 18:33:33

问题:
我尝试验证嵌套模型,但在创建嵌套模型实例时未执行数据注释属性。

public class Model
{
    [Required]
    string MainTitle {get;set;}
    public NestedModel NestedModel { get; set; }
}
public class NestedModel
{
    [Required]
    string SubTitle {get;set;}
}

在控制器:

public ActionResult GetTitles(Model model)
{
    if(ModelState.IsValid)
    {
       //Submodel is always valid even if the sub-title is null.
    }
}

Mvc4 不支持吗?如何扩展验证以处理此方面?

如何验证嵌套模型

我遇到了同样的问题。我结束了这样做:

public ActionResult GetTitles(Model model)
{
    if(ModelState.IsValid && TryValidateModel(model.NestedModel, "NestedModel."))
    {
       //Submodel will be validated here.
    }
}