2013-02-24 47 views
2

我有这样的事情:ASP.MVC包 - 如何正确定义它们?

bundles.Add(new StyleBundle("~/Content/Styles/Default/Forums").Include("~/Content/Styles/Default/Forums/Main.css", 
                      "~/Content/Styles/Default/Forums/Slider.css")); 

现在,当我释放我的应用程序并运行它,它会创建这样一个链接:

<link href="/Content/Styles/Default/Forums?v=8vn0bgRpB8BncmaT_onrpNlXa4t9ydK6_Fep81xhhm01" rel="stylesheet"/> 

这指的是我的网站目录,并获得那是禁用的。但ASP不允许我在应用程序之外指定文件,那么我该如何正确执行它?

回答

4

StyleBundle构造的虚拟路径不必与您申请一个现有路径:

bundles.Add(new StyleBundle("~/Content/css").Include(
    "~/Content/Styles/Default/Forums/Main.css", 
    "~/Content/Styles/Default/Forums/Slider.css")); 

如果你想使用外部文件,您可以使用捆绑的CDN路径(你需要设置UseCDN属性true):

bundles.UseCdn = true; 

bundles.Add(new StyleBundle("~/Content/css", "<CDN Path>").Include(
    "<CDN Path>/Main.css", 
    "<CDN Path>/Slider.css")); 
+0

'在StyleBundle构造的虚拟路径不必与您申请一个现有路径:那你的意思'? – ojek 2013-02-24 04:29:48

+1

我的例子,我使用'新的StyleBundle(“〜/ Content/css”)',但没有这样的虚拟目录。当然,在你看来,你必须使用'RenderStyle(“〜/ Content/css”)'。 – 2013-02-24 04:32:48