Asp.net mvc MVC模型验证未触发

Asp.net mvc MVC模型验证未触发,asp.net-mvc,vb.net,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 Pr

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

<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

公共属性描述()为字符串
得到
返回m_描述
结束
设置
m_Description=值
端集
端属性
私有m_描述为字符串
在我看来,这是不公平的

@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>
@ModelType CDB.ServiceDetail
@代码
使某人成为新的架线工
“描述
某人加上(“”)
某人加上(“”)
sb.Append(Html.DisplayNameFor(函数(模型)模型描述))
某人附加(“:”)
sb.Append(Html.TextBoxFor(函数(模型)模型描述))
某人加上(“”)
某人加上(“”)
结束代码
@Html.Raw(sb.ToString())
如果输入的描述字符超过30个,则不会出错。你知道为什么吗?如果相关的话,我使用的是MVC5

更新 我的脚本在布局母版中

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

尝试将jqueryval插件的脚本渲染添加到局部视图中

@section Scripts {
     @Scripts.Render("~/bundles/jqueryval")
}
默认情况下,这些捆绑包在AppStart.BundleConfig中的mvc模板中设置

VB语法:

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

当您在控制器中检查ModelState.IsValid时,它是否显示该模型有效?@DavidY我是MVC新手。。。我认为这些设置进行了客户端验证,从示例中我看到了验证是在客户端进行的。例子。。。它们将执行客户端验证,但您也可以执行服务器端验证。如果服务器端验证能够正常工作,那么我想可能会有一个问题,那就是如何为部分视图设置jQuery。通常视图继承共享视图,即_layout.cshtml文件,默认情况下,该文件包含jquery includes以进行验证。我怀疑部分视图设置中可能缺少这一点。我认为Microsoft文章将是整个过程的一个更完整的示例@大卫。。。我已经更新了我的问题,添加了对布局中存在的脚本的引用。我有什么遗漏吗?这真是个骗局。。。已经为其他人添加了vb razor语法。