2009-08-10 157 views

回答

3

如果您已经将模型图层(服务,模型,存储库等)放在单独的项目中,那么您的网站将不会是难以移动。但它仍然需要一些再加工的界面......你必须创建一个视图,的ViewModels,控制器,ModelBinders等

如果你的项目目前尚未建立使用n层的做法,我会建议移动到之前您将整个网站移动到MVC。它将使得向MVC的转移变得容易得多,而无需一次重做整个项目。

+0

+1对于重构的建议,如果该项目尚未架构良好的结构。 – 2009-08-10 14:56:43

6

我不认为在这个问题上有丰富的经验。

有些人正在迁移他们的项目,其他人正在使用WebForms。并不是每个项目都能以这种方式迁移到MVC,因此您仍然可以谈论迁移,而不是完全重写几个层。并非所有项目都需要迁移。

如果我要开始这种迁移,我要做的最重要的事情就是尝试了解是否对于要迁移的特定项目是否有意义。 MVC非常适合网站。具有非常复杂UI的Web应用程序(大量相互依赖的控件)将很难迁移。从现在起,您将无法依赖事件模型,并且必须手动编写大量的JavaScript来互连控件(启用/禁用,重新填充,显示/隐藏等)。你准备好了吗?

如果您决定继续,我会尝试的第一件事是收集遍布您的项目的代码,包括代码隐藏类,以统一代码隐藏类,并将其分成两类:业务规则和控制器决策。许多WebForms项目真的是一团糟,没有分离关注点,只是一个庞大的代码片断。如果你设法将它分成层(数据访问,业务规则,控制器逻辑),你就赢了。否则企业就注定要失败。

1

这一切真的需要转换将是我的第一个问题在这里? MVC和Web-Forms可以在同一个应用程序中并排居住,那么如果这是您想要的路线,那么是否可以使用MVC开发新的页面/部分?