zoukankan      html  css  js  c++  java
  • ASP.NET:使用HttpModule(给页面添加页头和页尾,重写URL)

    1.1.2,使用HttpModule(给页面添加页头和页尾) 返回顶部 
    
     /App_Code/SimpleModule.cs
    
    
    复制代码
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    
    
        //<system.web>
        //    <httpModules>
        //        <add name="Text" type="SimpleModule"/>
        //  <!--<add name="UrlRewriter" type="UrlRewriter"/>-->
        //    </httpModules>
        
        //</system.web>
    /// <summary>
    ///SimpeModule 的摘要说明
    /// </summary>
    public class SimpleModule:IHttpModule
    {
        public SimpleModule()
        {
            //
            //TODO: 在此处添加构造函数逻辑
            //
        }
    
        #region IHttpModule 成员
        public void Dispose()
        {
        }
        public void Init(HttpApplication context)
        { 
            context.BeginRequest +=new EventHandler(context_BeginRequest);
            context.EndRequest +=new EventHandler(context_EndRequest);
        }
        void context_EndRequest(object sender, EventArgs e)
        {
            ((HttpApplication)sender).Response.Output.Write("<hr>页尾");
        }
        void context_BeginRequest(object sender, EventArgs e)
        {
            ((HttpApplication)sender).Response.Output.Write("页头<hr>");
        }
        #endregion
    
    }
    
    复制代码
    
    1.1.3,URL重写 返回顶部 
    
     App_Code/UrlWrite.cs
    
    
    复制代码
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    
    /// <summary>
    ///UrlRewriter 的摘要说明
    /// </summary>
    public class UrlRewriter:IHttpModule
    {
        public UrlRewriter()
        {
            //
            //TODO: 在此处添加构造函数逻辑
            //
        }
    
        #region IHttpModule 成员
        public void Dispose()
        {
        }
    
        public void Init(HttpApplication context)
        {
            context.BeginRequest += new EventHandler(context_BeginRequest); ;
        }
        void context_BeginRequest(object sender, EventArgs e)
        {
            HttpContext context = ((HttpApplication)sender).Context;
            string requestPath = context.Request.Path.ToLower();
            //判断请求路径是否为鲜花页面
            if (requestPath.Contains("/webhttpmodule/flower/"))
            { 
                //找到路径中最后一个"/"的位置
                int start = requestPath.LastIndexOf("/");
                //找到最后一个"."的位置
                int end = requestPath.LastIndexOf(".");
                string id = requestPath.Substring(start + 1, (end - start));
                context.RewritePath("~/flower/flower.aspx?id=" + id);
            }
        }
        #endregion
    }
    
    复制代码
    
    web.config
    
    
    复制代码
    <?xml version="1.0"?>
    <!--
      有关如何配置 ASP.NET 应用程序的详细信息,请访问
      http://go.microsoft.com/fwlink/?LinkId=169433
      -->
    <configuration>
        <system.web>
            <httpModules>
                <add name="Text" type="SimpleModule"/>
          <!--<add name="UrlRewriter" type="UrlRewriter"/>-->
            </httpModules>
            <compilation debug="true" targetFramework="4.0"/>
        
        </system.web>
    </configuration>
    
    复制代码
  • 相关阅读:
    2019.6.20刷题统计
    36 线程 队列 守护线程 互斥锁 死锁 可重入锁 信号量
    35 守护进程 互斥锁 IPC 共享内存 的方式 生产者消费者模型
    34 进程 pid ppid 并发与并行,阻塞与非阻塞 join函数 process对象 孤儿进程与僵尸进程
    33 udp 域名 进程
    32 粘包 文件传输
    31 socket客户端. 服务器 异常 语法
    30 网络编程
    29 元类 异常
    26 封装 反射 常用内置函数
  • 原文地址:https://www.cnblogs.com/ypfnet/p/2918433.html
Copyright © 2011-2022 走看看