MVC模型验证未触发

时间:2015-12-10 13:56:04

标签: asp.net-mvc vb.net

我的服务模型中有以下内容

<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>

1 个答案:

答案 0 :(得分:1)

尝试将jqueryval插件的脚本呈现添加到局部视图中。

@section Scripts {
     @Scripts.Render("~/bundles/jqueryval")
}

这些捆绑包默认设置在AppStart.BundleConfig的mvc模板中。

VB语法:

@section Scripts 
    @Scripts.Render("~/bundles/jqueryval")
End Section