Asp.net mvc 如果不进行客户端验证,则需要

Asp.net mvc 如果不进行客户端验证,则需要,asp.net-mvc,kendo-ui,unobtrusive-validation,client-side-validation,Asp.net Mvc,Kendo Ui,Unobtrusive Validation,Client Side Validation,在asp.net mvc应用程序中的模型中,我使用了属性 型号 [RequiredIf("CustomerType== 'B'", ErrorMessage = "Please enter customer name")] [Display(Name = "Customer Name")] [DataMember(Name = "CustomerName")] public String CustomerName{ get; set; } [Required(ErrorMessage = "P

在asp.net mvc应用程序中的模型中,我使用了属性

型号

[RequiredIf("CustomerType== 'B'", ErrorMessage = "Please enter customer name")]
[Display(Name = "Customer Name")]
[DataMember(Name = "CustomerName")]
public String CustomerName{ get; set; }

[Required(ErrorMessage = "Please select customer type")]
[Display(Name = "Customer Type")]
[DataMember(Name = "CustomerType")]
public String CustomerType { get; set; }
查看

 @using (Html.BeginForm(null,null,FormMethod.Post,new { @class ="transactionForm" })){

 <td>@Html.LabelFor(model => model.CustomerName, htmlAttributes: new { @class = "control-label col-md-2" })</td>
 <td>@(Html.Kendo().TextBox()
       .Name("MusteriAd")
       .HtmlAttributes(new { style = "width: 250px; height: 32px;" }))
     @Html.ValidationMessageFor(model => model.CustomerName, "", new { @class = "text-danger" })
 </td>
使用这种结构,我可以完美地处理服务器端验证,但是在客户端-
validator.validate()
部分,它只验证具有所需属性的输入


我是否应该为客户端验证这些必需的输入编写额外的代码,或者在razor端或js端是否有其他方法来处理此问题?

我认为将此留给kendo ui是无法处理的。因为, kendo为客户类型输入生成html

<input data-val="true" data-val-required="Please enter customer name"    id="CustomerType" name="CustomerType" style="width: 250px; display: none;" type="text" data-role="dropdownlist" class="k-valid">

客户名称

<input class="k-textbox k-valid" id="CustomerName" name="CustomerName" style="width: 250px; height: 32px;">

kendo未为requiredIf属性化成员生成所需的
数据值


所以,我只在服务器端检查这些字段。

我认为将其留给剑道用户界面是无法处理的。因为, kendo为客户类型输入生成html

<input data-val="true" data-val-required="Please enter customer name"    id="CustomerType" name="CustomerType" style="width: 250px; display: none;" type="text" data-role="dropdownlist" class="k-valid">

客户名称

<input class="k-textbox k-valid" id="CustomerName" name="CustomerName" style="width: 250px; height: 32px;">

kendo未为requiredIf属性化成员生成所需的
数据值

所以,我只在服务器端检查这些字段