现在的位置: 首页 > 综合 > 正文

动态添加META、LINK等标签

2012年06月11日 ⁄ 综合 ⁄ 共 1156字 ⁄ 字号 评论关闭

    不想往每个ASPX页面手动添加META,也不想在每个页面的PAGE_LOAD中添加处理方法,偶目前找了两个方案.

    方案一:可以自己手动添加一个类PageBase,让该类继承System.Web.UI.Page.在PageBase中重写OnLoad方法

代码如下:

 

Code

最后,在新建的每个一ASPX页面的代码文件中的类都继承PageBase类.如果每次去修改默认的继承类嫌麻烦,就用方案二了.

 

      方案二:由于前面有用过ASP.NET 2.0自带的URL重写特性.然后添加一个适配类动态地改变FORM的ACTION属性值,在URL Rewrite后保持PostBack地址不变.于是也想添加一个对HtmlHead的适配类来改变HtmlHead里面的生成行为.

我的具体做法如下:(ASP.NET的具体编译原理与过程不是很熟,有可能无法解释其中的道理)

1.添加一个浏览器文件Head.browser,其配置的内容如下:

 

 

Code

 

2.添加一个HeadRewriterControlAdapter类,该类继承于System.Web.UI.Adapters.ControlAdapter;

3.在HeadRewriterControlAdapter类中重写OnLoad方法,即可达到目的,代码同方法一中重写OnLoad方法的代码一致.

 

 

   今天是七夕,愿天下有情人终成眷属 

 

 

 

 

 

 

 

抱歉!评论已关闭.