【发布时间】:2010-11-21 07:56:26
【问题描述】:
我只是想知道,如果您要在 ASP.NET 3.5 中创建一个新的 ASP.NET Web 表单应用程序,您会推荐哪一个用于 URL 重写? UrlRewriter.NET 或 ASP.NET MVC 路由。我以前用过 UrlRewriter.NET,对它很满意。
任何人的意见?
【问题讨论】:
标签: asp.net url-routing asp.net-mvc-routing url-rewriting
我只是想知道,如果您要在 ASP.NET 3.5 中创建一个新的 ASP.NET Web 表单应用程序,您会推荐哪一个用于 URL 重写? UrlRewriter.NET 或 ASP.NET MVC 路由。我以前用过 UrlRewriter.NET,对它很满意。
任何人的意见?
【问题讨论】:
标签: asp.net url-routing asp.net-mvc-routing url-rewriting
使用 UrlRewriter.NET - 它是为 Web 表单构建的,您已经拥有使用它的经验并喜欢它。 ASP.NET MVC 路由设计为在 MVC 模式内工作。
【讨论】:
路由是非常优越的恕我直言。而不是伪造它(重写 url 以保持 SEO 类型快乐)你正在制作它(制作真实的 url 以保持 SEO 类型快乐)。另一个巨大的优势是路由是可逆的——你可以很容易地从参数中获取 URL,这非常方便。
不,他们做的事情截然不同。 url 重写采用传入的 url 并在将请求传递给 ASP.NET(或 IIS)进行处理之前对其进行重写。 Url 路由采用 ASP.NET 中的 url 并使用在 Url 中找到的参数映射处理程序。 Url 本身永远不会改变。
【讨论】:
如果您使用的是 IIS7,请使用 URL Rewrite Module。
我将它用于我的一个网站,效果很好。
【讨论】:
ASP.NET 4.0 Web 表单(我相信它是在 3.5 SP1 中引入的)原生内置了路由。与重写模块相比,它具有在 ASP.NET 框架中原生构建的优势,因此不需要 hack 即可正常工作。
所以你不应该仅仅因为路由就选择 MVC。
【讨论】:
为什么不直接使用 Asp.Net MVC 并完全放弃 Webform 方法呢?我意识到该框架并不适合所有人,尤其是对于现有项目,但如果您开始开发一个新应用程序并购买路由机制,为什么不选择基于该概念构建的框架呢?
Asp.Net MVC 是一个优于 WebForms 的框架,它只需要更多的前期工作并且有一个学习曲线。但最终,您通常会得到一个更易于扩展和维护的应用程序。
【讨论】: