BundleConfig.cs不生成脚本引用

时间:2014-02-05 20:02:43

标签: c# asp.net-mvc bundle asp.net-mvc-5

我一直在努力让MVC 5远程验证在我的小项目中运行。我一直在阅读有关捆绑的内容,以获得它的基础知识。我为我的jqueryval包创建了一个包,如下所示:

        bundles.Add(new ScriptBundle("~/bundles/jqueryval")
            .Include("~/Scripts/jquery-{version}.js")
            .Include("~/Scripts/jquery.validate.js")
            .Include("~/Scripts/jquery.validate.unobstrusive.js")
            );

但是,当我发布页面时,查看源,唯一呈现的脚本如下:

    <script src="/myApp/Scripts/jquery-2.1.0.js"></script>
    <script src="/myApp/Scripts/jquery.validate.js"></script>

请注意query.validate.unobstrusive.js缺失。现在我知道这是使我的验证工作的关键组件,因为当我手动将query.validate.unobstrusive.js添加到我的视图页面时如下:

  @section Scripts {
  @Scripts.Render("~/bundles/jquery")
  @Scripts.Render("~/bundles/jqueryval")
  <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript" />
  }

一切正常。

所以现在我想知道,有什么我在捆绑时做错了吗?为什么这个剧本不会出现?

1 个答案:

答案 0 :(得分:0)

您是否在web.config中启用了它?

<appSettings>
   <add key="ClientValidationEnabled" value="true" />
   <add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>

您不需要将它包含在BundleConfig.cs中。只需确保jquery.validate.unobstrusive.js文件夹

中有jquery.validate.unobstrusive.min.jsscripts