2013-11-26 49 views
-1

当我在没有调试的情况下更改运行时,我的绑定不包含HTML中的正确路径。它正在删除文件名。在web.config中设置debug ='false'会导致绑定失败

using System.Web; 
using System.Web.Optimization; 

namespace Search 
{ 
    public class BundleConfig 
    { 
     // For more information on Bundling, visit http://go.microsoft.com/fwlink/?LinkId=254725 
     public static void RegisterBundles(BundleCollection bundles) 
     { 
      bundles.UseCdn = true; 

      var jqueryuiCdnPath = "http://ajax.aspnetcdn.com/ajax/jquery.ui/1.10.3/jquery-ui.min.js"; 
      var knockoutCdnPath = "http://ajax.aspnetcdn.com/ajax/knockout/knockout-2.2.1.js"; 
      var modernizerCdnPath = ""; 

      bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
         "~/Scripts/jquery-{version}.js", 
         "~/Scripts/jquery.printPage.js" 
         )); 

      bundles.Add(new ScriptBundle("~/bundles/jqueryui", jqueryuiCdnPath).Include(
         "~/Scripts/jquery-ui-{version}.custom.js")); 

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

      bundles.Add(new ScriptBundle("~/bundles/knockout", knockoutCdnPath).Include(
       "~/Scripts/knockout-2.1.0.debug.js")); 

      // Use the development version of Modernizr to develop with and learn from. Then, when you're 
      // ready for production, use the build tool at http://modernizr.com to pick only the tests you need. 
      bundles.Add(new ScriptBundle("~/bundles/modernizr").Include(
         "~/Scripts/modernizr-*")); 

      bundles.Add(new ScriptBundle("~/bundles/scpa").Include(
      "~/Scripts/scpa.js")); 


      bundles.Add(new StyleBundle("~/Content/css").Include("~/Content/NewSite.css").Include("~/Content/PagedList.css")); 


      bundles.Add(new StyleBundle("~/Content/themes/redmond").Include(
         "~/Content/themes/redmond/jquery-ui-{version}.custom.css")); 
     } 
    } 
} 

在我_layout.cshtml这些线

@Styles.Render("~/content/themes/redmond") 
    @Styles.Render("~/content/css") 

生成以下HTML与调试,调试过,这是产生

<link href="/content/themes/redmond?v=vAH9QfqxdFYSzS_GtpWa8fGJ5s-xvZ9vhODh9AGxIbo1" rel="stylesheet"/> 
<link href="/content/css?v=3o7zDFviiGqrSMyW4LTNH-J9tRGdIoONnnh_FMEm4Mg1" rel="stylesheet"/> 
+1

请说明您向下票。 –

回答

8

启用

<link href="/Content/themes/redmond/jquery-ui-1.10.3.custom.css" rel="stylesheet"/> 
<link href="/Content/NewSite.css" rel="stylesheet"/> 
<link href="/Content/PagedList.css" rel="stylesheet"/> 

然而这它是如何应对的被生成。

尽管您的第一个包可能不起作用 - 您无法为包名指定与现有文件夹相同的名称。重命名第二StyleBundle,如:

bundles.Add(new StyleBundle("~/Content/cssRedmond").Include(... 

,因为它产生会工作,因为它不与其他文件夹冲突的链接:

<link href="/content/cssRedmond?v=..." //This is OK 
<link href="/content/themes/redmond?v=..." //Not OK. Conflicts with folder 
+0

感谢您的帮助,我从阅读关于捆绑的介绍中不能理解,它会完全删除对发布的文件名称的引用。 –

+1

@ Mr.Manager是“捆绑”部分......文件被缩小/组合成一个文件。所以现在客户端只需要下载一个文件而不是多个文件。 – MikeSmithDev

相关问题