时间:2016-02-15 22:52 来源: 我爱IT技术网 作者:佚名
欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【asp.net Bundle功能扩展】,下面是详细的讲解!
asp.net Bundle功能扩展
public class BundleConfig
{
public static string BundleConfigPath="~/Config/BundleConfig.xml";
/// <summary>
/// Register Bundles From XML
/// </summary>
/// <param name="bundles"></param>
public static void RegisterBundles(BundleCollection bundles)
{
XmlDocument doc=new XmlDocument();
doc.Load(HttpContext.Current.Server.MapPath(BundleConfigPath));
XmlNode root=doc.DocumentElement;
// Regester Script
XmlNodeList ScriptList=root.SelectNodes("Scripts/Script");
if (ScriptList !=null && ScriptList.Count > 0)
{
foreach (XmlNode node in ScriptList)
{
string path=CheckNodeRegedit(node);
if (string.IsNullOrEmpty(path)) continue;
var bound=new ScriptBundle(path);
List<string> files=GetFilesFormNode(node);
if (files.Count > 0)
{
bound.Include(files.ToArray());
bundles.Add(bound);
}
}
}
// Regester Style
XmlNodeList StyleList=root.SelectNodes("Styles/Style");
if (StyleList !=null && StyleList.Count > 0)
{
foreach (XmlNode node in StyleList)
{
string path=CheckNodeRegedit(node);
if (string.IsNullOrEmpty(path)) continue;
var bound=new StyleBundle(path);
List<string> files=GetFilesFormNode(node);
if (files.Count > 0)
{
bound.Include(files.ToArray());
bundles.Add(bound);
}
}
}
doc=null;
}
/// <summary>
/// 如果内容为空则不添加
/// </summary>
/// <param name="node"></param>
/// <returns></returns>
private static List<string> GetFilesFormNode(XmlNode node)
{
List<string> files=new List<string>();
foreach (XmlNode nodeFile in node.ChildNodes)
{
if (!string.IsNullOrEmpty(nodeFile.InnerText.Trim()))
files.Add(nodeFile.InnerText.Trim());
}
return files;
}
/// <summary>
/// 检查注册的Node
/// </summary>
/// <param name="node"></param>
/// <returns></returns>
private static string CheckNodeRegedit(XmlNode node)
{
XmlAttribute pathAtt=node.Attributes["Path"];
string path=string.Empty;
if (pathAtt==null || string.IsNullOrEmpty(pathAtt.Value.Trim()) || node.ChildNodes.Count==0)
return string.Empty;
else
return pathAtt.Value.Trim();
}
}
关于asp.net Bundle功能扩展的用户互动如下:
相关问题:
答: >>详细
相关问题:
答: >>详细
相关问题:
答: >>详细
- 【asp】asp.net url重写浅谈-net-url重写
- 【DataSet】DataSet、DataTable、DataRow区别详解
- 【asp】asp.net 动态添加多个用户控件-net-动态添
- 【创建】ASP.NET Web API教程 创建域模型的方法详
- 【asp】asp.net ubb使用代码-net-ubb使用
- 【默认图片】图片不存在使用默认图片代替的实例
- 【asp】asp.net 页面转向 Response.Redirect Ser
- 【jQuery】jQuery实现倒计时跳转的例子-倒计时跳
- 【页面打印】关于ASP.NET页面打印技术的常用方法
- 【MVC5】MVC 5 第一章 创建MVC 5 web应用程序-net
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
