不用组件的url重写(适用于较大型项目)


网上很多关于url重写的教程都推荐下载某某某组件,

我个人不喜欢这样,即使是M$的组件也一样,因为我们干程序员的,越贴近真相越好

那么我也写一个关于url重写的文章,希望对和我一样有个性的coder们有点帮助

 

先在网站根目录下建立一个config文件夹,再在此文件架下建立一个urls.config文件,这里记录url的配置信息代码如下

Code

 我这里只写了一种规则

 

然后修改网站的web.config文件,修改后的代码为

Code

本来只写一个

<httpModules>
     
<add type="my.Forum.HttpModule" name="HttpModule"/>
</httpModules>

就可以了,我这里写了两个主要是为了演示如何兼容IIS7

 

然后在解决方案下新建一个项目(类库),起什么名字无所谓,主要是这个项目下一定要有一个命名空间为my.Forum的类文件

具体代码我贴出来   详细的解释我都写在注释里了

 

Code

 

文章写到这里就完了,

现在访问http://localhost/Default-1-1.aspx就可以接收到id为1  page为1的参数了

具体的规则可以自己设置

我已经把示例文件传到网上了可以点这里下载

本文参考了discuz的代码

补充在类SiteUrls中用到了单件模式(设计模式)因为此文不是谈设计模式,这里就不细说了

posted @ 2008-08-16 13:04  liulun  阅读(1760)  评论(12编辑  收藏  举报