从另一个模型中的所有属性模型禁用验证

时间:2013-08-04 13:56:15

标签: asp.net-mvc

我的模型有两个其他模型,因为在网站上用户可以看到注释,用户可以写评论:

public class NoteAndCommentViewModel
{
    public Note Note { get; set; }
    public Comment Comment { get; set; }
}

public class Note
{
    [Required]
    public string Title { get; set; }

    [Required]
    public string Summary { get; set; }
}

public class Comment
{
    [Required]
    public string Author { get; set; }

    [Required]
    public string Content { get; set; }
}

如何在NoteAndCommentViewModel中为Note的所有属性禁用验证?因为现在在动作控制器中我的模型始终无效,因为在提交表单后我返回注释模型所以Note模型为null:

[HttpPost]
public ActionResult Create(NoteAndCommentViewModel noteAndCommentViewModel)
{            
    if (ModelState.IsValid)
    {
        //.....
    }

    //.....
}

1 个答案:

答案 0 :(得分:0)

此类必须位于模型文件夹中,viewmodel文件位于另一个文件夹中,您可以在其中添加所有需要验证的属性

public class NoteAndCommentViewModel
{

    [Required]
    public string Title { get; set; }

    [Required]
    public string Summary { get; set; }

    [Required]
    public string Author { get; set; }

    [Required]
    public string Content { get; set; }
}