2012-03-08 76 views
11

我是MVC的新手,所以我想开始一个新项目并尝试一些MVC4中的新功能。我的Content目录中有两个css文件,normalise_minisite.css。当我使用下面的代码:ResolveBundleUrl无法解析所有文件?

<link href="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/Content/css")" rel="stylesheet" type="text/css" /> 

它只需要我的site.css文件不是我的规范化文件。我在我的应用程序开始执行以下操作:

protected void Application_Start() 
{ 

    // Remove all other view engines except razor: 
    ViewEngines.Engines.Clear(); 
    ViewEngines.Engines.Add(new RazorViewEngine()); 

    AreaRegistration.RegisterAllAreas(); 

    RegisterGlobalFilters(GlobalFilters.Filters); 
    RegisterRoutes(RouteTable.Routes); 

    BundleTable.Bundles.RegisterTemplateBundles(); 
    BundleTable.Bundles.EnableDefaultBundles(); 
} 

我是否需要为每个CSS文件捆绑(如this人做)?或者它应该自动找到所有的css文件(我期望它是默认行为)。我开始这个项目基于Razor视图引擎空网站(这实际上是不为空都:/),这可能是值得一提的

在此先感谢


更新

根据发布的链接,我需要注释注册模板包的行。例如:

protected void Application_Start() 
{ 

    // Remove all other view engines except razor: 
    ViewEngines.Engines.Clear(); 
    ViewEngines.Engines.Add(new RazorViewEngine()); 

    AreaRegistration.RegisterAllAreas(); 

    RegisterGlobalFilters(GlobalFilters.Filters); 
    RegisterRoutes(RouteTable.Routes); 

    //BundleTable.Bundles.RegisterTemplateBundles(); // This is not needed 
    BundleTable.Bundles.EnableDefaultBundles(); 
} 

现在可以工作。我的想法是,这两条线应该没有任何问题地共存。我想这是设计,但这是不好的设计?

回答

10

有人已回答了这个问题:

http://forums.asp.net/t/1776599.aspx/1?MVC+4+0+Bundling+Minification+not+working+

UPDATE:

有人表示担心,链接可能不足以回答这个问题。虽然我仍然认为,人谁访问这个页面应该链接线,简单的答案是从的Application_Start(与BundleTable.Bundles.EnableDefaultBundles()删除BundleTable.Bundles.RegisterTemplateBundles()线)和替换它

+0

谢谢解决方案的工作。当然,这两种选择应该一起工作? – 2012-03-08 20:22:54

+0

不幸的是,我对MVC 4的了解还不够多,无法回答我头顶的特定问题。我的猜测是,它应该,但它可能是一个MVC 4内的错误。 – evasilchenko 2012-03-08 20:42:22

+0

到底是什么:)它现在作为一种魅力! thx – 2012-04-14 18:58:27

0

注意:EnableDefaultBundles在Optmization的1.0.0 RTM版本中被删除,您仍然可以通过设置您自己的DynamicFolderBundles来获得相应的功能。但总的来说,这很可能会导致问题(通常在批量包含* .js时未捕获文件时存在依赖关系),所以我们转到显式捆绑包设置并远离EnableDefaultBundles。

对于最新的最新文档/教程:Codeplex Documentation

+0

我认为你应该在某些时候更新文档。大多数由MS人撰写的文章已经过时。 – LeftyX 2012-09-07 10:01:43