1
我在服务模型MVC模型验证未触发
<DisplayName("Description")>
<DataType(DataType.Text)>
<StringLength(30)>
Public Property Description() As String
Get
Return m_Description
End Get
Set
m_Description = Value
End Set
End Property
Private m_Description As String
以下内容,这在我的局部视图
@ModelType CDB.ServiceDetail
@Code
Dim sb as New StringBuilder
'Description
sb.Append("<div class=""rowBlock"">")
sb.Append("<div class=""rowTitle"">")
sb.Append(Html.DisplayNameFor(Function(model) model.Description))
sb.Append(":</div><div class=""rowValue"">")
sb.Append(Html.TextBoxFor(Function(model) model.Description))
sb.Append("</div>")
sb.Append("</div>")
End Code
<div id="divService" name="divService" style="width:100%">
@Html.Raw(sb.ToString())
</div>
如果我的描述键入超过30个字符它不错误。任何想法为什么?如果这是相关的,我正在使用MVC5。
UPDATE 我在_layout master中的脚本。
<script src="@Url.Content("~/Scripts/kendo/2015.3.1111/jquery.min.js")"></script>
<script src="@Url.Content("~/Scripts/kendo/2015.3.1111/jszip.min.js")"></script>
<script src="@Url.Content("~/Scripts/kendo/2015.3.1111/kendo.all.min.js")"></script>
<script src="@Url.Content("~/Scripts/kendo/2015.3.1111/kendo.aspnetmvc.min.js")"></script>
<script src="@Url.Content("~/Scripts/kendo.modernizr.custom.js")"></script>
当您在控制器检查ModelState.IsValid,它表明该模型是有效的? – davidallyoung
@DavidY我是新来的MVC ...我认为这些设置做了客户端验证,并且我看到验证发生在客户端。示例... https://joeylicc.wordpress.com/2013/06/20/asp-net-mvc-model-validation-using-data-annotations/ – Mych
他们将执行客户端验证,但您也可以执行服务器方面验证。如果服务器端验证工作,我会认为可能有问题,如何为部分视图设置jQuery。通常一个视图会继承一个共享视图,也就是_layout.cshtml文件,默认情况下该文件包含jquery以供验证。我怀疑这可能会在部分视图中丢失。 – davidallyoung