1

我想在我的剃刀视图中创建字段验证。
这很容易,因为 MVC 会自动为我们生成validationMessageFor

正如我所读到的,我们不允许在模型类中进行验证,而是使用 viewModel 类。现在我对如何将[Required]注释放在我的 viewModel 中有点困惑。

我的问题

这就是真正的验证将如何工作
查看

<tr>
            <td>Name</td>
            <td colspan="2">
                @Html.EditorFor(model => model.reg.registerNm, new { @class = "TextBoxAsLabel" })
                @Html.ValidationMessageFor(model => model.reg.registerNm)
            </td>

        </tr>

视图模型

public class reg
{  
   [Required]
   public string registerNm {get;set;}
}

这会起作用,但是在我的ViewModel中,结构不同,因为我需要使用许多表

My ViewModel中的数据

    public class RegisterInfoPA
{    

    public register reg { get; set; }

    public personalInfo pinfo { get; set; }

    public IEnumerable<maritalInfo> minfo { get; set; }

    public IEnumerable<eduInfo> edInfo { get; set; }

    public IEnumerable<monthlyIncome> monthlyIncomeInfo { get; set; }

    public refundBank refundBK { get; set; }

    public IEnumerable<accType> accType { get; set; }  
}

所以每当我在这里分配[Required]注释时,验证将不起作用。
我如何为我的 ViewModel 做验证消息,因为我的 viewModel 正在使用

公共注册 reg { 获取;放; }

它代表了我想要的这么多字段,但出于验证目的,我只希望验证一个或两个特定字段。我怎样才能做到这一点?

谢谢你 。

4

0 回答 0