zoukankan      html  css  js  c++  java
  • Asp.Net基于动态页面的静态页面实现

     出处:http://hi.baidu.com/%BA%EC%C3%F1/blog/item/68025ee7807f972cb83820fb.html

    只需要在Global.asax加上几行代码就行了,我们是通过捕获用户的请求,然后通过RewritePath来实现的:
    这是我程序中的一段代码,它就负责把上面的那些请求转化为真正的页面请求,
    我们是通过正则表达式来区分各种类别的请求的:

    protected void Application_BeginRequest(Object sender, EventArgs e)
            
    {                                                                        
                
    string url= Request.Url.AbsoluteUri ;
                
    string strMatch= @"http://www/.2shoushichang/.com/([^/]+)/" ;
                            
                
    string newUrl= "" ;
                
    string strCmd= SplitInfo(url,strMatch) ;
                
    if (strCmd!= null)
                
    {
                    
    switch(strCmd.ToLower())
                    
    {

                        
    case"product":
                             strMatch
    = @"/product/(/d+)/.aspx" ;
                            
    string strProductId= SplitInfo(url,strMatch) ;
                                                    
                            
    if (strProductId!= null)
                            
    {
                                 newUrl
    = string.Format("..//Product.aspx?id={0}",strProductId) ;
                                
    this.Context.RewritePath(newUrl) ;        
                             }

                            
    break ;
                                    
                        
    case"midtype"://s-100100-All-2.aspx
                             strMatch= @"/midtype/(/S+-/d+-/S+-/d+)/.aspx" ;
                            
    string strResult= SplitInfo(url,strMatch) ;
                                                    
                            
    if (strResult!= null)
                            
    {
                                
    string[] strParam= strResult.Split('-') ;//MidtypeList.aspx?id=100100&city=威海&type=s&Page=3
                                if (strParam.Length!= 4)
                                    
    break ;
                                
    string city= AppGlobal.GetCityNameByCode(strParam[2]) ;
                                 newUrl
    = string.Format("..//MidtypeList.aspx?type={0}&id={1}&city={2}&page={3}",strParam[0],strParam[1],city,strParam[3]) ;
                                
    this.Context.RewritePath(newUrl) ;        
                             }

                            
    break ;                                        
                        
    case"其它处理":
                            
    break;
                        
    default:
                            
    break ;
                     }


                 }
                            
             }
  • 相关阅读:
    016.CI4框架CodeIgniter数据库操作之:Insert插入一条数据
    015.CI4框架CodeIgniter数据库操作之:Query带参数查询数
    014.CI4框架CodeIgniter数据库操作之:查询数据库,并让数据以对象的方式返回查询结果
    013.CI4框架CodeIgniter数据库操作之:查询数据库,并让数据以数组的方式返回查询结果
    012.CI4框架CodeIgniter, 加载并调用自己的Libraries库
    033.SAP上查看IDOC接口,PI接口查不到的日志记录,可能在IDOC接口日志里面
    032.SAP上用户无法打开PPE模块,查看并开通用户的PPE权限
    011.CI4框架CodeIgniter, 获取查看用户的IP地址和浏览器信息
    010.CI4框架CodeIgniter, autoload自动加载自己的helper函数类
    009.CI4框架CodeIgniter, 网页访问GET的URL参数获取,分段输出URL参数
  • 原文地址:https://www.cnblogs.com/swarb/p/9924418.html
Copyright © 2011-2022 走看看