Html.ValidationMessageFor未显示

时间:2013-07-03 21:08:45

标签: c# asp.net-mvc entity-framework

我有一个使用ADO.NET实体数据模型的MVC2项目,我用它自动生成我的视图,因为它有大量的字段。它给了我这样的代码。

<% using (Html.BeginForm()) {%>
<%= Html.ValidationSummary(true) %>

<div class="editor-label">
    <%= Html.LabelFor(model => model.Position) %>
</div>
<div class="editor-field">
    <%= Html.TextBoxFor(model => model.Position) %>
    <%= Html.ValidationMessageFor(model => model.Position) %>
</div>

但是还有更多的领域。

这是我的控制器代码:

MyProjectEntities_Career_Applications dbca = new MyProjectEntities_Career_Applications();

[HttpPost]
    public ActionResult Apply(Career_Applications application)
    {
        if (ModelState.IsValid)
        {
            //save form
            dbca.AddToCareer_Applications(application);
            dbca.SaveChanges();
        }
        else
        {
            ModelState.AddModelError("", "Application could not be submitted.  Please correct the errors below.");
        }

        //redirect to thank you page
        return View("Apply", application);
    }

当ModelState.IsValid失败时,我看到&lt;%= Html.ValidationSummary(true)%&gt;但是没有一个Html.ValidationMessageFor出现过。

我错过了什么?

2 个答案:

答案 0 :(得分:1)

原来问题在于CSS。愚蠢的错误,唉!

感谢您的帮助。

答案 1 :(得分:0)

我认为您缺少正在使用的Jquery引用或错误处理库。

当您多次包含验证脚本时,通常也会发生这种情况。 (在共享视图中,在您的视图中)