我只开始玩ASP.Net MVC和新到VS2008动态数据网站模板.我注意到他们都在URL处理中使用路由,并且我理解由于路由,ASP.Net MVC在IIS6下不起作用.但是,我的DynamicData站点在IIS6上工作得很好.
由于IIS7的要求,我不得不暂时放弃对即将到来的项目的ASP.Net MVC的探索,我想知道两者之间的本质区别是什么,即什么使得DynamicData网站在IIS6和MVC不是吗?
只要启用 ASP.NET的通配符映射,ASP.NET MVC确实可以在IIS6(以及IIS5)下工作.我已经使用IIS6将MVC应用程序部署到生产中,因此我可以保证它是可行的.
关键的区别在于DynamicData中的所有URL都以具有ASPX扩展名的文件结束,因此,无论物理存在,都会调用ASP.NET运行时(因为ASPX与ASP.NET相关联),而大多数ASP.NET MVC请求没有扩展(或者有一个MVC扩展,默认情况下没有映射),因此在配置工作之前需要进行IIS配置.
IIS7自动运行,因为IIS7本身是受管理的,因此IIS/ASP.NET之间没有分离.