易截截图软件、单文件、免安装、纯绿色、仅160KB

ASP.NET教程:URL重写的实现

最近有个朋友要做url重写的东西,我帮他弄了弄,回头看当年自己写的那个文章,当时以为自己写的很容易理解.但现在再看却觉得写的不好.而今天百度了一下urlrewriter发现我这个文章竟然排第二.为了方便更多朋友,我再写点东西补充下.
一般用百度搜的朋友都是对这个不了解但又急需要用的,我想,再多的语言也比不过一句代码.于是我把今天帮朋友时候写的一个小例子传了上来.这个小例子的目的是实现对任意url的重写(但不包括二级域名的,有需要二级域名的也可以先了解下url重写的概念). 这个小项目的制作过程如下
需要对诸如http://song2.cn/viewnews/2009/3/2.html的url进行重写.将其重写为http://song2.cn/viewnews.aspx?id=2&year=2009&month=3
下载微软的那个URLRewriter.dll,使用这个对url进行重写.
我们来看这个url, http://song2.cn/viewnews/2009/3/2.html(当然也可能是3.html,6.html,7.html).要重写,首先是截获url请求,然后分析当时的url,最后跳转到相应的页面.所以我们第一步是要截获url请求.为此新建一个类库叫URL,在该类库中引用URLRewriter.dll.新建一个类myrewritter.cs,代码如下
namespace URL
{
    public class myrewritter : URLRewriter.BaseModuleRewriter
    {
        protected override void Rewrite(string requestedPath, HttpApplication app)
        {
            if (requestedPath.Contains("viewnews/2009/3/2.html"))
                app.Context.RewritePath("/viewnews.aspx?id=2&year=2009&month=3");
            else
                app.Context.RewritePath("/here.aspx");
        }
    }
}
可以看到该类继承了URLRewriter.BaseModuleRewriter,然后在Rewrite方法中加入了我们自己的逻辑.现在,只要当前的url请求是viewnews/2009/3/2.html,我们就会将页面重写到/viewnews.aspx?id=2&year=2009&month=3.
这只是一个简单的例子,


相关文档:

ASP.NET软件工程师面试题

ASP.NET软件工程师面试题
 
一、选择题
1.       int[][] myArray3=new int[3][]{new int[3]{5,6,2},new int[5]{6,9,7,8,3},new int[2]{3,2}}; myArray3[2][2]的值是()。
A.      9
B.      2
C.    &n ......

ASP.NET(C#)中string与stringBuilder的区别

 
在相同字符串的许多操作上,使用StringBuilder类会比使用String对象更有效率。
 
 
 当你对一个string对象赋值时,这时会生成一个这个对象的副本,如果你赋值多次的话在系统中就会保存多个这个对象的副本,会对系统资源造成很大的浪费,但是StringBuilder不会出先上述情况
String数据类型代表的 ......

ASp.NET学习网(www.17aspx.com)上线了

经过一个多月的准备,我的小站ASP.NET学习网(www.17aspx.com)终于上线了。界面图如下:
ASP.NET学习网(www.17aspx.com),为ASP.NET学习者提供教程、示例、源码、工具等学习资料,推动ASP.NET学习者之间的交流。涉及ASP.NET、ASP.NET MVC、LINQ、VS2010、WPF、Silverlight、C#3.5等方面。 ......

asp.net 程序自动提交登陆表单并保持Session及Cookie

1、通过附加一个cookiecontainer到httprequest对象中,可以得到登录后返回的代表SESSION ID的COOKIE。
2、将此COOKIE包含在一个cookiecontainer中并附加到另一个HTTPREQUEST请求中,则可以实现SESSION的还原。
部分主要代码:
        CookieContainer cookieContainer =& ......

asp.net简单数字验证码的实现

调用
验证码:<input type="text" id="txtValidate" style="border: solid 1px #9B9B9B; width: 85px;
height: 17px;" />  <img src="Rnd.aspx" mce_src="Rnd.aspx" style="width: 58px; height: 17px;
border: solid 1px #9B9B9B" align="abs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号