针对ASP.NET页面实时进行GZIP压缩优化的几款压缩模块的使用简介及应用测试!
在介绍之前,先简单说一说ASP.NET服务端GZIP压缩模块的作用及工作原理,很多人编写网页的时候页面因为使用了大量的JS特效又或者放置很多大型动态广告导致了页面或脚
本体积庞大,通常都会使用一些压缩工具本地对页面或脚本进行一定的压缩后再上传到服务器,但这样的压缩工具一般压缩率有限,优化自然也不明显,本文章介绍的压缩模块的作用
就是对asp.net的页面或脚本等资源进行高强度GZIP压缩(一般能压缩到只有1/5的体积),而且压缩的过程是发生在客户端请求aspx页面的时候由服务端进行压缩处理后再传送给客户
端显示,换言之项目使用这些压缩模块之后,所有的aspx页面都不需要事先进行压缩处理,而是由压缩模块在页面被客户端第一次请求的时候自动在服务端后台进行压缩处理(压缩处
理的时间很快,几乎可以忽略不计,但压缩后的页面加载速度却提升明显)。下面就让我介绍几款实现这样功能的压缩模块:
一、WebResourceCompression压缩模块 Read the rest of this entry »
二月 26th, 2012 in
asp.net开发 |
评论关闭 | 傩神上帝
在网站搜索到两种方法:
一:在搜索关键词高亮中一般的方法都是采用替换的办法(Replace)这个方法有一个缺点就是不能区分大小写的问题。在网上找了找发现有人用正则表达式的方法来解决这个问题还真不错,效率也比较高,归纳如下,有用得到的朋友可以一试。
//搜索关键词高亮显示函数
public static string HighLightKeyWord(string pain,string keyword)
{
//搜索关键词高亮函数By JN 2006.11.30
System.Text.RegularExpressions.MatchCollection m = Regex.Matches(pain, keyword, RegexOptions.IgnoreCase);
//忽略大小写搜索字符串中的关键字
for (int j = 0; j < m.Count; j++)//循环在匹配的子串前后插东东
{
//j×31为插入html标签使pain字符串增加的长度:
pain = pain.Insert((m[j].Index + keyword.Length + j * 31), “</font>”);//关键字后插入html标签
pain = pain.Insert((m[j].Index + j * 31), “<font color=#ff0000>”);//关键字前插入html标签
}
//搜索关键词高亮函数By JN 2006.11.30
return pain;
}
当然用之前引用先:using System.Web.UI.HtmlControls;
还有:using System.Text.RegularExpressions;(小鱼加)
以上代码有问题:同一句中有多个关键字时出问题
二:试一下这个先
/// <summary>
/// 替换关键字为红色
/// </summary>
/// <param name=”keycontent”>原始内容</param>
/// <param name=”k”>关键字,支持多关键字</param>
/// <returns>String</returns>
/// <author>haver Guo</author>
public static string Highlightkeywords(string keycontent, string k)
{
string resultstr = keycontent;
if (k.Trim().IndexOf(’ ’) > 0)
{
string[] myArray = k.Split(’ ’);
for (int i = 0; i < myArray.Length; i++)
{
resultstr = resultstr.Replace(myArray[i].ToString(), “<font color=#FF0000>” + myArray[i].ToString() + “</font>”);
}
return resultstr;
}
else
{
return resultstr.Replace(k, “<font color=#FF0000>” + k + “</font>”);
}
}
注:第二种方法已在水立方室内设计网站中引用,确实可用。
八月 25th, 2011 in
asp.net开发 | tags:
asp.net |
评论关闭 | 傩神上帝
1、收藏夹推广法:把一些精彩内容的页面添加到QQ书签,百度搜藏,雅虎收藏等,让喜欢这些内容的网民去阅读,收藏。
2、版主联盟推广法:这个方法适合论坛社区网店的推广。也就是先去加入一些版主联盟,像大旗版主联盟就很不错,每天把论坛的一些精彩内容提交上去,等待被相关频道录用,一经录用,那就会给你带去不少的IP.我最多的一次是两
天就给网店带去了3W多的IP点击量。
3、回复置顶推广法:其实这个方法我也不知道该叫什么名字,它的局限性很小,据我所知,只使用于猫扑大杂烩,就暂且叫回复置顶吧。这个方法是我偶然发现的,是在看网店IP来路的时候发现的,发现那天有200多的IP来自猫扑的一
个帖子,但是我知道我们没有去那里发过推广帖,所以觉得有点奇怪,就去那个帖子看看,发现是有人放了我们网店的一个链接,并且回复置顶了,所以才给我们带来了200多的IP.后来我就去和一些常在猫扑混的网友聊,才知道可以用
一种叫“月明符”的道具来置顶回复。版主还不能删,只要管理员才有权删,所以一般情况下都能置顶一段时间。
4、SNS网店软文推广法:现在SNS类型的网店非常流行,去SNS网店主要是去几个有人气的SNS网店有针对性的加几百上千个用户。然后选择合适的软文并合理的附带上网店链接,发表到自己的日志里。再让自己的一些好友分享,这样就让
很多人都关注到你的文章,关注到了你的网店。
5、SNS网店API合作推广法:如果你自己或下面的员工有一定的技术实力,可以开发一些和自己网店产品相关的小插件,插到校内上,插到海内上。只要有开放API的SNS网店都去插下。现在很多网店都有在这么搞,去校内看看哪些开放的
应用程序,很多都是一些小网店提供的,而且上面都或多或少有挂自己网店的广告。而且这个市场越早做越好,很多SNS网店都是才开始尝试开发API,审核的要求还不是特别严格。等以后做的网店多了,再想插到SNS网店里去就难了。
6、有奖注册推广法:以增加会员注册量来做的一种推广方法。一般大家都是以有奖注册,或者一些激励注册的方法来推广,现在的人都是现实很精的,无利可图的事,他们是不会做的。
7、免费游戏推广法:免费游戏就是在你的网店挂一中免费的游戏,但是是要和网店的主题相同,还要是有趣味性。。。
8、QQ群推广法:用几十个qq,每个qq加入几十个群,每天发一遍网店。平均、50个qq*每个qq加入50个群*每个群50个人=75000人观看。如果qq更多,加入的群更多,加入的是大群,每个群的人数更多,则宣传效果更好。即使排除不在线
的qq用户,效果也不容低估。要忍辱负重,不怕被踢。另外就是在QQ群是是可以发群邮件的,例如你可以把你的网店******.com上的精彩内容在邮件中推荐。
9、搜索引擎推广法:如今的新手站长,最热衷的就是这个短平快的方法。搜索网店的功能就是整合网络资源,给网民找到最适合的网店内容,给其他网店带去流量是其意想不到的副作用。很多站长类网店的网店推广栏目,似乎都变成
seo专区了。seo的最好方法,就是网页代码规范、访问速度快、内容独特少重复,对网民有用,而且具有唯一性。
10、软文推广法:写文章,或者引用好文章,里面巧妙地加入自己的网址。 Read the rest of this entry »
八月 24th, 2011 in
网络推广Seo | tags:
SEO,
深圳SEO |
评论关闭 | 傩神上帝
今天到公司上班,照例拿出自己的移动硬盘插入电脑工作。谁知插上之后时连时掉,最后完全无法识别,我很奇怪,怎么用的好好的突然变成这样呢。网上查了查,说是非法拔出USB线造成的,恩,我确实经常这样做,郁闷,我的资料不会都挂了吧。没办法只有拿到电脑城去看看了,老板一看说是外壳坏了,换个就行了,这里给大家说说移动硬盘,一般来说是指移动小盘,其实就是笔记本电脑专用的,你把笔记本硬盘拆下来其实就是移动小盘,再加个外壳就是移动硬盘了。
硬盘和外壳之间有一个转接头,我的就是转接头插槽坏了,花了我50大洋换了个外壳,果然可以识别了。回家兴致勃勃的查看我的资料,都在,哈哈,得把今天落下的工作补回来。打开一个WROD编辑后点保存,呃“介质受保护。。。”,就是只能读,不能改。查了一些原因,有的说中毒,完全没有根据,最后查到一个很小的原因,但确实就是这个原因,硬盘上有个开关,被电脑城老板换外壳时关掉了,打开这个开关,OK了,一切正常了。
今天把自己遇到的问题写下来,供大家参考,同时要明白必须正确规范的使用移动硬盘等电子产品。我是傩神,顺便打个广告 “深圳SEO优化”。
七月 29th, 2011 in
生活琐事 |
3 Comments | 傩神上帝
从搜索引擎优化角度出发,301重定向是网址重定向最为可行的一种办法。当网站的域名发生变更后,搜索引擎只对新网址进行索引,同时又会把旧地址下原有的外部链接如数转移到新地址下,从而不会让网站的排名因为网址变更而收到丝毫影响。同样,在使用301永久性重定向命令让多个域名指向网站主域时,亦不会对网站的排名产生任何负面影响。
以前也没怎么关注301重定向,第一因为没有网站要重定向,第二对于不带www的域名我都是用的转发到带www的域名。不过一场风波之后,很多服务商已经不提供转发服务了,虽说易名现在还可以享用到免费的转发服务,但是却不能不带www的转发到带www的同时进行MX记录解析,这对于需要MX解析的朋友也是一大烦恼。
而且有些域名在国外,转发更是用不了,也只能进行301永久重定向了,不然搜索引擎是把不带www的站和带www的站分开对待的,只是我们习惯于用带www的域名罢了。
在网络上看了些教程,再根据自己的实践,也终于搞定了IIS服务器上的301永久重定向设置问题。实现方法如下:
1.新建一个站点,对应目录如E:\wwwroot\301web。该目录下只需要1个文件,即index.html或者加个404.htm。绑定要跳转的域名,如图:

Read the rest of this entry »
七月 23rd, 2011 in
网络推广Seo | tags:
深圳SEO |
评论关闭 | 傩神上帝
关于SEO的基础理论网上已经有许多,我的博客也有如:网站推广实战:100条不容错过的经验 我就不一一多列举了。我只说实战,并且是自己亲自推广的网站。
最近刚跳槽,到了一家微电子公司,先做把公司网站从新改版,除了域名空间也换了,这里空间最好是不换,我有自己的原因,就不说了。这样我有了一个一年左右的域名和一个新申请的空间。如下:
http://www.mtxpower.com/电源模块

网站权重要高,图片、新闻都不可少,flash等机器人不可抓的尽量少。看看我每天工作的步骤,从2010年12月1日起:
1.查看网站相关(如收录情况site:www.mtxpower.com),这个是我的习惯性操作,你可以不用每天都查看,但是你经常查看也会给网站带来一个固定反链如:(http://www.baidu.com/s?wd=domain%3Awww.mtxpower.com),第二条就是站长站的外链。
2.向各大搜索引擎提交网站,以求更快被收录,缩短推广时间。后面这个链接就是一些搜索引擎集合(http://www.sowang.com/freesubmit.htm)
3.更新sitemap,你要建立一个sitemaps.xml文件,当你有更新新闻时,就向google提交一次,以便让其更快的抓取你的链接。
4.在群或论坛上发你要推广的关键定链接,方法是在相关行业网站或论坛注册账号:钜微电子 密码:******,用户名就用关键字;除此外,像个性签名,也用你要做的关键字,如我的:电源模块品牌 深圳电源模块 深圳电源品牌 电源模块 深圳微电子 定制电源模块。自己发一些高质量的贴,这样容易被收录,如不会,或不想写,还有一个方法,就是到别人已经被收录的贴里留言,带上自的网站链接和关键字。例:http://3g.spforum.net/viewthread.php?tid=326905&page=1如这贴就是被百度已经收录,我在下面写了些废话,加上了我网站链接,百度马上算你多了条外链。切忌乱发贴,不能被收录,都是浮云。。。搞不好还被认为作弊被K。 Read the rest of this entry »
一月 7th, 2011 in
网络推广Seo | tags:
SEO |
评论关闭 | 傩神上帝
我们添加新闻,有时文章过长,这样看着累,不利于用户体验,所以很多网站都会把一篇新闻分成若干页,下面是我的程序:
public string NoHTML(string Htmlstring) //去除HTML标记
{
//删除脚本
Htmlstring = Regex.Replace(Htmlstring, @” <script[^>]*?>.*? </script>”, “”, RegexOptions.IgnoreCase);
//删除HTML
Htmlstring = Regex.Replace(Htmlstring, @” <(.[^>]*)>”, “”, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”([\r\n])[\s]+”, “”, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”–>”, “”, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @” <!–.*”, “”, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”&(quot|#34);”, “\”", RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”&(amp|#38);”, “&”, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”&(lt|#60);”, ” <”, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”&(gt|#62);”, “>”, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”&(nbsp|#160);”, ” “, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”&(iexcl|#161);”, “\xa1″, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”&(cent|#162);”, “\xa2″, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”&(pound|#163);”, “\xa3″, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”&(copy|#169);”, “\xa9″, RegexOptions.IgnoreCase);
Htmlstring = Regex.Replace(Htmlstring, @”&#(\d+);”, “”, RegexOptions.IgnoreCase);
Htmlstring.Replace(” <”, “”);
Htmlstring.Replace(”>”, “”);
Htmlstring.Replace(”\r\n”, “”);
Htmlstring = HttpContext.Current.Server.HtmlEncode(Htmlstring).Trim();
return Htmlstring;
} Read the rest of this entry »
十二月 30th, 2010 in
asp.net开发 | tags:
asp.net |
评论关闭 | 傩神上帝
两行CSS来解决,共5种方案
一、
iframe{n1ifm:expression(this.src=‘about:blank’,this.outerHTML=‘’);}/*这行代码是解决挂IFRAME
木马的哦*/
script{nojs1:expression((this.src.toLowerCase().indexOf(‘http’)==0)?document.write
(‘木马被成功隔离!’):‘’);}
原理:将《script》标记的src拿出来转为小写,再看是不是以“http”开头的外域JS脚本文件,如果是,则页面内容清空并写出“木马被成功隔离!”。反之正常显示。 缺点:访客无法看到被感染了《script》木马的页面。
二、
iframe{nifm2:expression(this.src=‘about:blank’,this.outerHTML=‘’);}
script{no2js:expression((this.src.toLowerCase().indexOf(‘http’)==0)?document.close():‘’);}
原理:将外域的JS文件的document.write()使用document.close()强制关闭。木马内容还没有来得及写完,只有部分被强制缓存输出了,剩下的不会再写了。
三、
iframe{ni3fm:expression(this.src=‘about:blank’,this.outerHTML=‘’);}
script{n3ojs:expression((this.src.toLowerCase().indexOf(‘http’)==0)?document.execCommand(‘stop’):‘’);}
原理:同到外域的JS文件,立即调用IE私有的execCommand方法来停止页面所有请求,所以接下来的外域JS文件也被强制停止下载了。就像我们点了浏览器的“停止”按钮一样。看来这是JS模拟IE停止按钮的一种方法。
四、
iframe{nif4m:expression(this.src=‘about:blank’,this.outerHTML=‘’);}
script{noj4s:expression(if(this.src.indexOf(‘http’)==0)this.src=‘res://ieframe.dll/dnserror.htm’);}
原理:将外域的JS文件的src重写成本地IE404错误页面的地址,这样,外域的JS代码不会下载。
五、
iframe{nifm5:expression(this.src=‘about:blank’,this.outerHTML=‘’);}
script{noj5s:expression((this.id.toLowerCase().indexOf(‘vok’)!=-1)?document.write(‘木马被成功隔离!’):‘’));}
第五种方案的页面HTML源代码《script》中要加入以“lh”为前缀的id,如lhWeatherJSapi,<script src=“***/**.js” id=“lhSearchJSapi”></script>
十二月 28th, 2010 in
div+css | tags:
DIV+CSS |
评论关闭 | 傩神上帝
来源:阿莫李的私生活
博客圈流传诸多博客的神话,即所谓的博客成功之道,但其中绝大多数是那种如果你遵循而行之后会导致新博客以死告终的真实的谎言。然后,许多新博主却沉迷在这些博客神话中不可自拔,他们不但深信不疑并且还严格地执行,因为这些博客之道可能是他们从一些令人尊敬和钦佩的老博主那里听来,但按部就班的结果却是让他们在挫折和迷茫之中选择了关闭博客,因为他们从来没有从坚持这些博客之道的努力之中取得任何用用的结果。笔者(注:Onibalusi Bamidele,Young Entrepreneur Blog的博主)有一个还算比较成功的博客,另外通过观察了其他一些成功博客的博主,笔者认识到了那些所谓的博客神话和博客之道是多么地危险和具有欺骗性。所以,笔者要在这篇博文中让揭穿这些伪神话,并让它们体无完肤露出真实的谎言本性。虽然,揭穿这些伪神话或许会让你震惊,或许也会引发诸多口水战,但以下的文字全部是笔者的经验之谈。
神话之一:“ 内容为王”
其实,这怎么能是一个博客神话呢?笔者这么说你们一定惊奇不已,因为大多数博主和你们一样都对此深信不疑。有一位非常成功的博主兼撰稿人叫做布莱恩克拉克,他说如果一段文字没有人读就不能赋予它们生命。可是,不管你的内容是多么棒——你还是需要有人去读它和分享它!最重要的是哪怕真有人分享你的博文,哪怕其势仿佛瘟疫流传一般,你还是需要一个社群让这阵瘟疫继续升压和蔓延。
从笔者收到的许多读者来信中,从我的博客读者的博客上,笔者也曾发现了许许多多非常棒非常棒的文章。或许,他们的文章放在我的博客上真的会引起一场巨大的瘟疫,因为我博客有着非常庞大的读者群,但为什么他们的博客为什么却不能造出这种蔓延之势?所以,不管你的文章有多棒多猛,如果你没有读者的话,你的文章并不能造势传播,你的博客并不会因此而取得成功。
许多新博主废寝忘食只为写出非常棒的文章,因为他们相信了“内容为王”的神话,但他们最后却没有收获到任何东西。为什么呢?因为,内容非王!
神话之二——营销为王
笔者不是唯一不同意内容为王是博客神话的人,可是有许多对内容为王的神话持有怀疑态度的人,他们却博客成功的神话在于营销。错了!你绝对什么都营销不到!不管你用什么手段来宣传你的博客,但如果你的博客只要是一个普普通通平凡无异的博客,你最后的结果还是竹篮打水一场空。
有一次,笔者投稿写的一篇文章在一天之中为我的博客引来了1000人次的访问(写那篇文章前我博客的平均访问为150人次每天)。可是?1000+的访问量持续了仅仅两天之后,我博客的访问量又一落千丈回到了平均150人次的水平。当时,笔者虽然有点儿失落,但也意识到访问量之所以下降,那是因为我没有贮存和准备好连绵不断的好文章做那篇文章的后援,因此我的博客也就留不住那些突如其来的访客了。
所以,不管你用什么样的营销策略,不管你为的宣传博客花了多少钱,如果你没有连续不断的好的内容做为坚实的后盾,你所做的一切努力都是浪费金钱浪费生命。所以,营销亦非王!
内容非王,营销非王,那什么才是王?或许,你们一定不会料到,因为我相信只有博主自己才是真正的王。博主要能抓住内容和营销的平衡点,这才是你的博客通向成功的唯一途径。 Read the rest of this entry »
十二月 23rd, 2010 in
电脑新闻,
网络推广Seo | tags:
SEO,
深圳SEO |
评论关闭 | 傩神上帝
Asp.Net XML操作基类(修改,删除,新增,创建)作者:浪淘沙
/**********************************************************************************
*
* 功能说明:XML处理基类
* 作者: 刘功勋;
* 版本:V0.1(C#2.0);时间:2006-12-13
*
* *******************************************************************************/
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Xml;
using System.Text;
using MSXML2;
namespace EC
{
/// <summary>
/// XML 操作基类
/// </summary>
public class XmlObject : IDisposable
{
//以下为单一功能的静态类
#region 读取XML到DataSet
/**************************************************
* 函数名称:GetXml(string XmlPath)
* 功能说明:读取XML到DataSet
* 参 数:XmlPath:xml文档路径
* 使用示列:
* using EC; //引用命名空间
* string xmlPath = Server.MapPath(”/EBDnsConfig/DnsConfig.xml”); //获取xml路径
* DataSet ds = EC.XmlObject.GetXml(xmlPath); //读取xml到DataSet中
************************************************/
/// <summary>
/// 功能:读取XML到DataSet中
/// </summary>
/// <param name=”XmlPath”>xml路径</param>
/// <returns>DataSet</returns>
public static DataSet GetXml(string XmlPath)
{
DataSet ds = new DataSet();
ds.ReadXml(@XmlPath);
return ds;
}
#endregion
#region 读取xml文档并返回一个节点
/**************************************************
* 函数名称:ReadXmlReturnNode(string XmlPath,string Node)
* 功能说明:读取xml文档并返回一个节点:适用于一级节点
* 参 数: XmlPath:xml文档路径;Node 返回的节点名称
* 适应用Xml:<?xml version=”1.0″ encoding=”utf-8″ ?>
* <root>
* <dns1>ns1.everdns.com</dns1>
* </root>
* 使用示列:
* using EC; //引用命名空间
* string xmlPath = Server.MapPath(”/EBDnsConfig/DnsConfig.xml”); //获取xml路径
* Response.Write(XmlObject.ReadXmlReturnNode(xmlPath, “mailmanager”));
************************************************/
/// <summary>
/// 读取xml文档并返回一个节点:适用于一级节点
/// </summary>
/// <param name=”XmlPath”>xml路径</param>
/// <param name=”NodeName”>节点</param>
/// <returns></returns>
public static string ReadXmlReturnNode(string XmlPath,string Node)
{
XmlDocument docXml = new XmlDocument();
docXml.Load(@XmlPath);
XmlNodeList xn = docXml.GetElementsByTagName(Node);
return xn.Item(0).InnerText.ToString();
}
#endregion
#region 查找数据,返回一个DataSet
/**************************************************
* 函数名称:GetXmlData(string xmlPath, string XmlPathNode)
* 功能说明:查找数据,返回当前节点的所有下级节点,填充到一个DataSet中
* 参 数:xmlPath:xml文档路径;XmlPathNode:当前节点的路径
* 使用示列:
* using EC; //引用命名空间
* string xmlPath = Server.MapPath(”/EBDomainConfig/DomainConfig.xml”); //获取xml路径
* DataSet ds = new DataSet();
* ds = XmlObject.GetXmlData(xmlPath, “root/items”);//读取当前路径
* this.GridView1.DataSource = ds;
* this.GridView1.DataBind();
* ds.Clear();
* ds.Dispose();
* Xml示例:
* <?xml version=”1.0″ encoding=”utf-8″ ?>
* <root>
* <items name=”xinnet”>
* <url>http://www.paycenter.com.cn/cgi-bin/</url>
* <port>80</port>
* </items>
* </root>
************************************************/
/// <summary>
/// 查找数据,返回当前节点的所有下级节点,填充到一个DataSet中
/// </summary>
/// <param name=”xmlPath”>xml文档路径</param>
/// <param name=”XmlPathNode”>节点的路径:根节点/父节点/当前节点</param>
/// <returns></returns>
public static DataSet GetXmlData(string xmlPath, string XmlPathNode)
{
XmlDocument objXmlDoc = new XmlDocument();
objXmlDoc.Load(xmlPath);
DataSet ds = new DataSet();
StringReader read = new StringReader(objXmlDoc.SelectSingleNode(XmlPathNode).OuterXml);
ds.ReadXml(read);
return ds;
}
#endregion
#region 更新Xml节点内容
/**************************************************
* 函数名称:XmlNodeReplace(string xmlPath,string Node,string Content)
* 功能说明:更新Xml节点内容
* 参 数:xmlPath:xml文档路径;Node:当前节点的路径;Content:内容
* 使用示列:
* using EC; //引用命名空间
* string xmlPath = Server.MapPath(”/EBDomainConfig/DomainConfig.xml”); //获取xml路径
* XmlObject.XmlNodeReplace(xmlPath, “root/test”, “56789″); //更新节点内容
************************************************/
/// <summary>
/// 更新Xml节点内容
/// </summary>
/// <param name=”xmlPath”>xml路径</param>
/// <param name=”Node”>要更换内容的节点:节点路径 根节点/父节点/当前节点</param>
/// <param name=”Content”>新的内容</param>
public static void XmlNodeReplace(string xmlPath,string Node,string Content)
{
XmlDocument objXmlDoc = new XmlDocument();
objXmlDoc.Load(xmlPath);
objXmlDoc.SelectSingleNode(Node).InnerText = Content;
objXmlDoc.Save(xmlPath);
}
#endregion
#region 删除XML节点和此节点下的子节点
/**************************************************
* 函数名称:XmlNodeDelete(string xmlPath,string Node)
* 功能说明:删除XML节点和此节点下的子节点
* 参 数:xmlPath:xml文档路径;Node:当前节点的路径;
* 使用示列:
* using EC; //引用命名空间
* string xmlPath = Server.MapPath(”/EBDomainConfig/DomainConfig.xml”); //获取xml路径
* XmlObject.XmlNodeDelete(xmlPath, “root/test”); //删除当前节点
************************************************/
/// <summary>
/// 删除XML节点和此节点下的子节点
/// </summary>
/// <param name=”xmlPath”>xml文档路径</param>
/// <param name=”Node”>节点路径</param>
public static void XmlNodeDelete(string xmlPath,string Node)
{
XmlDocument objXmlDoc = new XmlDocument();
objXmlDoc.Load(xmlPath);
string mainNode = Node.Substring(0, Node.LastIndexOf(”/”));
objXmlDoc.SelectSingleNode(mainNode).RemoveChild(objXmlDoc.SelectSingleNode(Node));
objXmlDoc.Save(xmlPath);
}
#endregion
#region 插入一个节点和此节点的字节点
/**************************************************
* 函数名称:XmlInsertNode(string xmlPath, string MailNode, string ChildNode, string Element,string Content)
* 功能说明:插入一个节点和此节点的字节点
* 参 数:xmlPath:xml文档路径;MailNode:当前节点的路径;ChildNode:新插入的节点;Element:插入节点的子节点;Content:子节点的内容
* 使用示列:
* using EC; //引用命名空间
* string xmlPath = Server.MapPath(”/EBDomainConfig/DomainConfig.xml”); //获取xml路径
* XmlObject.XmlInsertNode(xmlPath, “root/test”,”test1″,”test2″,”测试内容”); //插入一个节点和此节点的字节点 Read the rest of this entry »
十二月 23rd, 2010 in
asp.net开发 | tags:
asp.net |
评论关闭 | 傩神上帝