2014-01-08 30 views
4

我有我的应用程序在.Net框架中4.它是一个Asp.Net Web应用程序。我需要使用Bundle.Config以便使用捆绑功能。我可以在.net 4中使用Bundling [Bundle.Config] Asp.Net web应用程序

我读过很多文件说,它是.Net框架4.5中的特性,并且在Asp.Net MVC应用程序中。

我需要为aspx页面中的脚本创建一个包。 我可以在我的文件中包含Bundle.Config,以便捆绑工作。

回答

11

是的,您可以使用ASP.net中的捆绑包4.使用Nuget Package ManagerMicrosoft ASP.Net Web Optimization Framework安装到您的项目中。然后在global.asax中注册绑定方法Application_Start。这样的事情 -

var jqueryBundle = new ScriptBundle("~/Scripts/jquery"); 
    jqueryBundle.Include(new string[] { 
     "~/Scripts/jquery-1.8.3.js", 
     "~/Scripts/jquery-ui-1.9.1.custom.min.js", 
     "~/Scripts/jquery-ui-timepicker-addon.js", 
     "~/Scripts/jquery.validate.js", 
     "~/Scripts/jquery.validate-additional-methods.js" 
    }); 

    BundleTable.Bundles.Add(jqueryBundle); 

然后在你aspx页面或masterpage呼叫bundle-

<%= System.Web.Optimization.Scripts.Render("~/Scripts/jquery") %> 
+0

我需要有HTTP://code.jquery.com/jquery-1.9.1。js in the bundle这段代码不接受这条路径作为有效路径 – Sunil

+0

我不认为你可以绑定不在你自己的域名上的脚本。 – th1rdey3

+0

@ th1rdey3:参考我的解决方案,你可以参考捆绑 – Sunil

3

在夫妇审判和阅读捆绑我发现从NuGet包解决方案

安装Web优化框架该解决方案的管理器包括以下文件中的System.Web.Optimization,即使在Apsx文件中也是如此。

在Application_StartUp():

var bundles = BundleTable.Bundles; 
bundles.UseCdn = true; //enable CDN support 
var jqueryCdnPath = "http://code.jquery.com/jquery-1.9.1.js"; 
var jQueryUICdnPath = "http://code.jquery.com/ui/1.10.3/jquery-ui.js"; 
bundles.Add(new ScriptBundle("~/bundles/jquery",jqueryCdnPath)); 
bundles.Add(new ScriptBundle("~/bundles/jqueryui", jQueryUICdnPath)); 

在ASPX页面:

<script src="<%=BundleTable.Bundles.ResolveBundleUrl("~/bundles/jqueryui")%>" type="text/javascript"></script> 
    <script src="<%=BundleTable.Bundles.ResolveBundleUrl("~/bundles/jquery")%>" type="text/javascript"></script> 

〜/束/ jQueryUI的:对于UI Java脚本 〜/束/的jquery:为功能的Java脚本。

0
  1. 添加DLL文件WebGrease.dll参考
  2. 在global.asax中添加娄代码JS和CSS

    动态solutioncss =新System.Web.Optimization.StyleBundle(“〜/捆绑/ solutionDetailCSSBundle“); solutioncss.Include(“〜/ Style.css”,new CssRewriteUrlTransform()); solutioncss.Include(“〜/ incs/highslide/highslide.css”,new CssRewriteUrlTransform()); solutioncss.Transforms.Add(new CssMinify()); System.Web.Optimization.BundleTable.Bundles.Add(solutioncss);

    动态HeaderLinkBundle = new System.Web.Optimization.ScriptBundle(“〜/ bundles/HeaderLinkBundle”); HeaderLinkBundle.Include(“〜/ js/jquery.js”); HeaderLinkBundle.Include(“〜/ js/headerlink.js”); HeaderLinkBundle.Transforms.Add(new JsMinify()); System.Web.Optimization.BundleTable.Bundles.Add(HeaderLinkBundle);

    System.Web.Optimization.BundleTable.EnableOptimizations = true;

  3. 将这个CSS和js包添加到aspx页面。

相关问题