将旧版 Webforms 应用程序迁移到 asp.net mvc?
有没有人有有关从 ASP.NET Webforms 迁移到 ASP.NET MVC 的最佳实践的良好链接或提示?
我们有一个大型 Web 表单应用程序,我们希望将其逐步迁移到 MVC。这是我们当前的设置。
两大Webforms项目(VB) 多个类库和服务(C# 和 VB.Net) Subsonic 2.2 数据访问层 SQL Server 2008 DB
我们正在考虑以下事项:
- 在开发时保持经典 Webforms 项目目前按原样运行。
- 使用 Razor 视图引擎创建基于 MVC 3 的新 MVC 项目
- 使用 Nhibernate(存储库模式)DAL
- 在 MVC 项目中逐个模块转换/构建现有功能
- 如果可能,用新的 MVC 模块替换旧 Webform 项目中的某些功能。通过例如集成。 iframe。
- 随着时间的推移,新的 MVC 应用程序将完全取代旧的 Webforms 项目。
我们希望保持数据库不变,因此我们还需要一个工具来基于数据库创建模型。
这是一个可能的解决方案吗?
does anyone have good links or tips on best practices concerning migrating from ASP.NET Webforms to ASP.NET MVC?
We have a large webforms application that we would like to piece by piece migrate to MVC. Here is our current setup.
Two big Webforms project (VB)
Multiple class libraries and services (C# and VB.Net)
Subsonic 2.2 Data access layer
SQL Server 2008 DB
We are considering the following:
- Keep the classic webforms project running as is for now while developing.
- Create new MVC project based on MVC 3 with Razor view engine
- Use Nhibernate (Repository pattern) DAL
- Convert/build the existing functionality module by module in the MVC project
- Replace some functionality in the old webforms project with new MVC modules if possible. Integrate via eg. Iframes.
- In time the new MVC app will replace the old webforms project entirely.
We would like to keep the DB as is so we also need a tool to create the Model based on the DB.
Is this a possible solution?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
WebForms 应用程序大量使用服务器端会话,因为大多数服务器控件在内部使用它。您将无法使用在 MVC3 中的 WebForms 中使用的任何服务器控件(至少无需进行一些修补)。
MVC3 提倡使用 Restful 架构,其中任何状态都以 html、url 或 cookies 维护,这些就是我认为您应该重新考虑转换为 MVC3 的决定的原因。只有当它会给你带来巨大的优势时才这样做,因为我怀疑你会重新发明现有的应用程序 - 我怀疑在开发新应用程序时会花费同等的精力来迁移它。
同样,如果您的目标是使用 MVC 进行未来的开发,那么没有什么可以阻止您在 Webforms 应用程序中创建 MVC 的“区域”或“区域”。
如果您仍然想迁移到 MVC3,请查看 此处
WebForms applications use server-side session a lot because most of the server controls use it internally. You will not be able to use any of the server controls that you used in WebForms in MVC3 (atleast without some tinkering).
MVC3 promotes the use of restful architecture, where any state is maintained in html or url or cookies, and these are reasons why I think you should revisit the decision to convert to MVC3. Do so only if it will give you a huge advantage, because I suspect you will be reinventing ground up your existing app - I suspect there will be an equal amount of effort migrating it as to while developing it new.
Again there is nothing preventing you from creating an "area" or a "region" of MVC in your webforms app, if your goal is to use MVC for future development.
If you still want to move to MVC3, take a look here
这是好的解决方案。另外,对于 NHibernate,您可以使用带有 NH 插件的 MyGeneration 在现有数据库之上生成模型。还可以将 WebForms 和 MVC 一起托管在一个 Web 应用程序中。刚刚完成完全相同的任务。但使用 EF 进行 DAL。
It is ok solution. Also for NHibernate you can use MyGeneration with NH plugin to generate models on top of existing DB. And it is also possible to host WebForms and MVC together in one web app. Just finished quite the same task. But used EF for DAL.