关于.net:从ASP.NET WebForms迁移到ASP.NET MVC的建议?

关于.net:从ASP.NET WebForms迁移到ASP.NET MVC的建议?

Suggestions for Migrating from ASP.NET WebForms to ASP.NET MVC?

ASP.NET MVC已在该论坛上讨论了几次。 我打算将多个网站从经典的ASP / ASP.NET WebForms大规模迁移到ASP.NET MVC,并且想知道你们中具有这两种技术经验的人有什么样的建议。

我所拥有的:一个典型的ASP.NET应用程序,该应用程序具有高度耦合的表示/业务逻辑,各种杂乱的ASP.NET生成的Javascript代码等等。

我想要的是:清洁ASP.NET MVC生成的不可知标记。 纳夫说。

有什么要注意的指针,技巧,窍门或陷阱吗?

谢谢!


哇,我不确定我们是否再在这里谈论迁移-区别更像是重写!

正如其他人还说过的那样,MVC是构建Web应用程序的一种全新方法-您的大多数演示文稿代码都不会保留。

但是,如果您要用MVC重写,那么已经拥有的就是一个很好的原型。您的问题很可能是很难做到一点一点-例如,MVC使用现成的URL重命名,来回链接相当混乱。

另一个问题是为什么?我们中的许多人都拥有庞大的遗留应用程序,希望使用最新技术,但是如果您的应用程序已经在工作,为什么要切换?

如果我现在正在寻找一个新的应用程序,那么MVC将是一个非常强大的候选人,但是没有足够的收获来在项目后期切换到它。


Any pointers, tips, tricks, or
gotchas to be aware of?

好吧,我认为您可能与思考技巧和陷阱有些距离:)我确定您知道,ASP.NET MVC不是ASP.NET的某些新版本,而是与ASP.NET完全不同的范例ASP.NET,您将不会迁移,将开始进行全新的开发工作以替换现有系统。因此,也许您可??以确定应用程序的需求,但是其余的内容可能会从头开始重新构建。

基于您在现有代码库中描述的(非常常见)的问题,您应该考虑借此机会学习设计松耦合系统的一些当前最佳实践。这很容易做到,因为现代的"最佳实践"易于理解和实践,并且得到了社区的大力支持,并在此过程中提供了高质量的开源工具。

同时,我们也正在将ASP / ASP.NET应用程序迁移到ASP.NET MVC,无论如何,这就是我的准备研究得出的结论。

这是一篇有关使用ASP.NET MVC的链接的文章,但我将从阅读这篇文章开始。该帖子表面上是关于NHibernate(一种ORM工具)的,但是讨论和链接都是为了使基础正确,并且是准备将ASP.NET网站移植到MVC的结果。该文章中链接的一些参考体系结构均基于ASP.NET MVC。这是有关NHibernate的另一篇文章,但是在"最佳实践和参考应用程序"部分中,即使不是全部列出的参考应用程序,大多数也是ASP.NET MVC应用程序。参考体系结构对于快速了解如何设计最佳的,可维护的ASP.NET MVC站点非常有用。


WebForms可以与同一应用程序中的MVC控制器一起使用。默认情况下,路由不会路由对磁盘上存在的文件的请求。因此,您可以一次开始重写网站的一小部分以使用MVC模式,而其余部分则使用WebForms。


我的观点是,这两种技术是如此不同,以至于如果您在原始Web窗体应用程序中将代码紧密耦合在一起,那么最好的方法是从选择其中一种并通过创建新的ASP.NET MVC应用程序并将其转换为开始进行转换代码放入各自的层中这将使您走上重用之路,以移植其他应用程序。


推荐阅读