.net 简单的url 重写

来源:互联网 发布:网络执法官安卓手机版 编辑:程序博客网 时间:2024/04/27 18:21

 

在web.config中的设置

<httpHandlers>
      <add verb="*" path="*.aspx" type="包名,类名"/>
</httpHandlers> 

其中.aspx  可以设置成其它的, 如.do  .ht  。。。不过得在IIS中设置一下,

让它们的处理程序都指向和.aspx 一样的。

类的实现也很简单, 实现IHttpHandlerFactory 接口

class ReWriteUrl : IHttpHandlerFactory
    {
        #region IHttpHandlerFactory 成员

        public IHttpHandler GetHandler(HttpContext context, string requestType, string url, string pathTranslated)
        {
               context.RewritePath("newUrl")           ; // 通过这个函数重写就可以了

    return System.Web.UI.PageParser.GetCompiledPageInstance("虚拟路径","物理路径",context);

        }

        public void ReleaseHandler(IHttpHandler handler)
        {
            throw new Exception("The method or operation is not implemented.");
        }

        #endregion
    }

 

原创粉丝点击