从ASP.NET WebForms迁移到ASP.NET MVC的建议?

从ASP.NET WebForms迁移到ASP.NET MVC的建议?,.net,asp.net,asp.net-mvc,webforms,.net,Asp.net,Asp.net Mvc,Webforms,ASP.NETMVC已经在这个论坛上出现过几次。我将对几个网站进行一次大规模的迁移,从经典的ASP/ASP.NET WebForms迁移到ASP.NET MVC,我想知道你们中有这两种技术经验的人有什么建议 我拥有的:一个典型的ASP.NET应用程序,具有高度耦合的表示/业务逻辑,各种杂乱的ASP.NET生成的Javascript代码,等等 我想要的是:干净的ASP.NET MVC生成的不可知标记。”努夫说 有什么需要注意的提示、技巧、窍门或陷阱吗 谢谢 哇,我不确定我们在这里谈论的是迁移——区

ASP.NETMVC已经在这个论坛上出现过几次。我将对几个网站进行一次大规模的迁移,从经典的ASP/ASP.NET WebForms迁移到ASP.NET MVC,我想知道你们中有这两种技术经验的人有什么建议

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

我想要的是:干净的ASP.NET MVC生成的不可知标记。”努夫说

有什么需要注意的提示、技巧、窍门或陷阱吗


谢谢

哇,我不确定我们在这里谈论的是迁移——区别更像是重新编写


正如其他人所说,MVC是构建web应用程序的一种全新方式——您的大多数演示代码都不会被使用

然而,如果您正在用MVC重新编写,那么您已经拥有了一个很好的原型。您的问题可能是很难一点一点地完成—例如,MVC使用现成的URL重命名,使得前后链接相当混乱

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


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

我的观点是,这两种技术是如此的不同,如果您在原始Web表单应用程序中有紧密耦合的代码,那么最好的方法就是从选择其中一种开始,通过创建一个新的ASP.NET MVC应用程序并删除代码来转换它进入各自的层。这将使您走上重用的道路,以便移植其他应用程序

任何指示、提示、技巧或 有什么需要注意的吗

嗯,我想你可能离思考技巧还有一点距离(gotchas:)我相信你知道,ASP.NET MVC不是ASP.NET的新版本,而是一个与ASP.NET完全不同的范例,你不会迁移,你将启动一个全新的开发工作来替换现有的系统。因此,也许你可以在确定应用程序的需求方面取得进展,但其余的可能会从头开始重新构建

根据您在现有代码库中描述的(非常常见)问题,您应该考虑利用这个机会来学习一些设计松散耦合系统的当前最佳实践。这很容易做到,因为现代的“最佳实践”很容易理解和实践,并且有巨大的社区支持,以及高质量的开源工具在这个过程中提供帮助

我们现在也正在将ASP/ASP.NET应用程序迁移到ASP.NETMVC,这是我的前期研究得出的结论


,但我会先说。这篇文章表面上是关于NHibernate(一个ORM工具)的,但讨论和链接都是关于正确的基础,是准备将ASP.NET站点移植到MVC的结果。在那篇文章中链接到的一些参考体系结构是基于ASP.NET MVC的,但是在“最佳实践和参考应用程序”部分,列出的大多数参考应用程序(如果不是所有的话)也是ASP.NET MVC应用程序。参考体系结构对于快速了解如何设计最佳、可维护的ASP.NET MVC站点非常有用。

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