9

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

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 不支持吗?如何扩展验证以使用此方面?

4

1 回答 1

13

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

public ActionResult GetTitles(Model model)
{
    if(ModelState.IsValid && TryValidateModel(model.NestedModel, "NestedModel."))
    {
       //Submodel will be validated here.
    }
}
于 2015-03-23T14:53:03.040 回答