|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
今天去面试,被问到C#中的new关键字,看了那么多的书对new关键字还是有一定认识,回来又把new复习了一遍,发现了许多以前还不知道的细节。跟着针对IIS7.0的URL重写模块的公布,和在.NET框架3.5SP1中包括了ASP.NET路由(Routing),很多ASP.NET开辟职员入手下手诘责这两种特征相互间的干系,和应当什么时候利用。
RuslanYakushev在LearnIIS.NET上宣布了一篇很有引导意义的文章。
两者实质的区分在于:IISURL重写的处置体例比ASP.NET路由在条理上更低,关于客户端是不成见的。
Ruslan给出了IIS7URL重写历程的可视化事情流。你能够看到URL重写模块是在哀求被传送到哀求处置器(Handler),比方ASP.NET办理的ASPX处置器之前被激活的。IISURL重写其实不晓得详细的哀求处置器。
他同时还给出了ASP.NET路由历程的可视化事情流。能够看到ASP.NET路由就是一个哀求分发器,它必需明白地获知一个特定的哀求事实应路过哪一个处置器。
来自Ruslan的形貌以下:
- URL重写一般被用于在Web服务器处置哀求之前操纵URL路径。URL重写模块其实不晓得处置器实践处置URL重写的任何内容。别的,实践的哀求处置器其实不晓得URL是不是已被重写。
- ASP.NET路由一般依据哀求的URL路径将哀求分发各处理器。与URL重写相反,路由组件晓得处置器,并可以选择能够为哀求的URL天生反响的处置器。你能够将ASP.NET路由看做是一个初级的处置器映照机制。
- IISURL重写模块可以用于任何范例的Web使用程序,包含ASP.NET,PHP,ASP和静态文件。ASP.NET路由只能用于基于.NET框架的Web使用程序。
- 在用于使用程序池方面,不论是集成的仍是典范的IIS管道形式,IISURL重写模块的事情体例都是不异的。而ASP.NET路由则会优先选择利用集成管道形式。ASP.NET路由也能够事情于典范形式,可是在这类情形下,使用程序的URL必需包括文件扩大名,大概使用程序必需在IIS中利用“*”设置处置器。
- URL重写模块能够依据域名、HTTP标头和服务器变量举行重写判别。默许情形下,ASP.NET路由只能利用URL路径和标头的情势。
- 除重写功效,URL重写模块可以实行HTTP重定向,断定自界说形态码和作废哀求。ASP.NET路由则不具有这些功效。
- URL重写模块在以后版本中是不克不及扩大的。ASP.NET路由完整可以扩大和定制。
检察英文原文:IISURLRewritingvsASP.NETRouting
本文出自:http://www.infoq.com/cn/news/2008/11/urlrewriting
net网页编程的设计机制:首先产生一个中间码,第二部编译为本地(机器)码。这个机制有很大的缺点。 |
|