3

当我从 Asp.Net MVC 3 迁移到 MVC 4时,Asp.Net MVC 4 除了缩小之外一切正常。

问题

我的捆绑工作但缩小不起作用

捆绑代码

public static void RegisterBundles(BundleCollection bundles)
        {
            bundles.Add(
                new Bundle("~/Bundles/Entity").Include(
                "~/Scripts/Module/*.js"));
        }

并呈现如下所示的脚本标签:(这是真的,很好!)

例如

 <script src="/Bundles/Entity?v=rXIO788liM9pg6AVW5wS7Fxv9LboBMZ5O4ajQRLgk7Y1"></script>

如果您看到上面的代码,它会生成捆绑脚本引用,这意味着捆绑工作正常,但是当我点击查看内容时,JS 内容没有被缩小,这意味着缩小不起作用。

有人请让我知道问题出在哪里或应该如何解决?

提前致谢!

4

1 回答 1

1

请首先确保您已添加如下脚本

bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
 "~/Scripts/jquery-1.7.1.min.js",
 "~/Scripts/jquery.validate.min.js",
 "~/Scripts/jquery.validate.unobtrusive.min.js"));

并确保在 BundleConfig 类中定义了上述包,如下所示:

 public class BundleConfig
{
 public static void RegisterBundles(BundleCollection bundles)
 {


bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
 "~/Scripts/jquery-1.7.1.min.js",
 "~/Scripts/jquery.validate.min.js",
 "~/Scripts/jquery.validate.unobtrusive.min.js"));
 }
} 

“*”通配符用于组合位于同一目录下且具有相同前缀或后缀名称的文件。假设您要添加所有存在于“~/Script”目录中的脚本文件并以“jquery”为前缀,那么您可以创建如下包:

bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include("~/Scripts/jquery*.js"));

所有包都在您的 Web 应用程序的 Global.asax 文件的 Application_Start 事件中注册。

protected void Application_Start()
{
 BundleConfig.RegisterBundles(BundleTable.Bundles);
 // code
}
于 2013-03-14T09:21:48.297 回答