不想往每个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方法的代码一致.
今天是七夕,愿天下有情人终成眷属。