.NET重写URL方法谈

对于.NET重写URL,也就是Rewriter URL相信大家都不太陌生。在这里我们要介绍的也是.NET重写URL方法,希望能为大家打开新的思路。

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都做网站、成都网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的禹城网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

最近小项目要求重写url找了下资料用到了MS的2个dll,微软的例子写得太不明显了。后来终于改好了。

ActionlessForm.dll------用来处理回发

URLRewriter.dll----- 是微软封装好了的一个URL重写组件

添加引用----

具体的使用说明请去看

http://msdn.microsoft.com/zh-cn/library/ms972974.aspx#XSLTsection123121120120

比我说得好得多。。

具体使用方法:

首先web.config的配置:

 
 
 
 
  1.  version="1.0"?> 
  2.  
  3.    
  4.      name="RewriterConfig" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler,  
  5.  URLRewriter" /> 
  6.    
  7.      
  8.          
  9.              
  10.                 ~/ListCategories\.aspx 
  11.                 ~/Default.aspx 
  12.              
  13.              
  14.                 ~/(\d+)\.html 
  15.                 ~/Cover.aspx?id=$1 
  16.              
  17.          
  18.      
  19.      
  20.          
  21.              type="URLRewriter.ModuleRewriter, URLRewriter" name="ModuleRewriter"/> 
  22.          
  23.          debug="true"/> 
  24.  
  25.  

主要配置的代码是这些。其他的根据自己的需要和.net的版本自行添加。

然后Default.aspx,Cover.aspx,新建2个页面

Default.aspx:

 
 
 
 
  1. <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %> 
  2.  
  3. > 
  4.  
  5.  xmlns="http://www.w3.org/1999/xhtml"> 
  6.  runat="server"> 
  7.     </font></strong>无标题页<strong><font> 
  8.  
  9.  
  10.      id="form1" runat="server"> 
  11.     
     
  12.      href="ListCategories.aspx">ListCategories.aspx 
  13.      href="30.html">30.html 
  14.     
 
  •      
  •  
  •  
  • Cover.aspx:

     
     
     
     
    1. <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Cover.aspx.cs" Inherits="Cover" %> 
    2. <%@ Register TagPrefix="skm" Namespace="ActionlessForm" Assembly="ActionlessForm" %> 
    3.  
    4. > 
    5.  
    6.  xmlns="http://www.w3.org/1999/xhtml"> 
    7.  runat="server"> 
    8.     </font></strong>Cover<strong><font> 
    9.  
    10.  
    11.      id="form1" runat="server"> 
    12.     
       
    13.     Cover页面  
    14.     

       href="javascript:void(0)" onclick="history.go(-1)">返回上一页

       
    15.          ID="Button1" runat="server" Text="Button" /> 
    16.     
     
  •      
  •  
  •  
  • Cover.aspx.cs:

     
     
     
     
    1. using System;  
    2. using System.Collections;  
    3. using System.Configuration;  
    4. using System.Data;  
    5. using System.Linq;  
    6. using System.Web;  
    7. using System.Web.Security;  
    8. using System.Web.UI;  
    9. using System.Web.UI.HtmlControls;  
    10. using System.Web.UI.WebControls;  
    11. using System.Web.UI.WebControls.WebParts;  
    12. using System.Xml.Linq;  
    13.  
    14. public partial class Cover : System.Web.UI.Page  
    15. {  
    16.     protected void Page_Load(object sender, EventArgs e)  
    17.     {  
    18.         if (Request.QueryString["id"] == null)  
    19.         {  
    20.             Response.End();  
    21.         }  
    22.         else  
    23.         {  
    24.             int id = Convert.ToInt32(Request.QueryString["id"]);  
    25.             Response.Write(id);  
    26.         }  
    27.     }  

    还要去对IIS设置:

    这样的话伪静态就可以用了

    C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll ---这是上面的路径

    浏览Default.aspx页

    ListCategories.aspx --页面其实在服务器上面是没有的。它里面的内容是Default.aspx的内容,因为配置文件里面设置了

    写得有点乱。

    本例子是和微软的重写url基本一样的。算是简单化了一点点呵呵。

    原文标题:.net重写url浅谈

    链接:http://www.cnblogs.com/ret00100/archive/2009/10/12/1581778.html

    【编辑推荐】

    1. 详解ASP.NET MVC分页的实现方法
    2. ASP.NET MVC与WebForm区别谈
    3. ASP.NET MVC应用程序执行过程分析
    4. ASP.NET MVC分页控件的实现
    5. 有关ASP.NET MVC框架的一些基础知识

    本文题目:.NET重写URL方法谈
    文章源于:http://www.shufengxianlan.com/qtweb/news8/61608.html

    网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

    广告

    声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联