我是 MVC 的新手,所以我想我会开始一个新项目并尝试 MVC4 中的一些新功能。我的Content
目录中有两个 css 文件,normalise_mini
并且site.css
. 当我使用以下代码时:
<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 文件创建一个包(就像这个人正在做的那样)?或者它应该自动找到所有的 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();
}
这现在有效。我的想法是这两条线应该共存而没有任何问题。我想这是设计使然,但这是糟糕的设计吗?