将 MVC 内容添加到现有 ASP.NET 应用程序?
我们有一个使用标准 Web 表单以 ASP.NET for .NET 3.5 编写的 Web 应用程序。
展望未来,我们希望开始在 ASP.NET MVC 中构建新功能,并随着时间的推移迁移现有功能。
这样的事情可行吗?我们能否将必要的文件添加到 ASP.NET Web 应用程序中,从而“升级”它以与 MVC 足够兼容,以便我们可以开始添加路由、控制器、视图等?
旧站点使用包含顶部标题、左侧菜单和主要内容的框架集。我的设想是为所有现有页面创建一个新的母版页,将所有这些内容集成到每个页面中,然后开始使用视图添加新页面。
据我了解,除非升级到 .NET 4,否则我们无法使用 MVC 3,因此我认为我们有以下选择:
- 构建一个新网站,在登录主站点时以某种方式使用相同的凭据自动登录新站点,以及站点之间的链接。我发现这个解决方案存在很多问题。
- 将 ASP.NET MVC 2 集成到现有软件中,添加必要的文件,并开始以 MVC 风格添加新内容,仅修复旧文件中的关键错误,并随着时间的推移将它们迁移到 MVC。
- 升级到 .NET 4 并集成 ASP.NET MVC 3,其余部分与选项 2 几乎相同。
- 等到我们可以安排完全重写,这在可预见的将来可能不会发生。
- 不要这样做,保留网络表单。
请注意,完全重写目前超出了范围,因此过渡期是我们现在可以做的唯一选择。
选项2和3是我们想要的,其余的只是为了完整性。
这些选项可行吗?我们还有其他我没有想到的选择吗?
We have a web application written in ASP.NET for .NET 3.5, using standard web forms.
Going forward we want to start building new features, and over time migrate existing features, in ASP.NET MVC.
Is such a thing doable? Can we add the necessary files to an ASP.NET web application and thus "upgrade" it to be compatible enough with MVC so that we can start adding routes, controllers, views, etc.?
The old site is using a frameset containing a top header, a left menu, and a main content. What I envisioned was to create a new masterpage for all the existing pages, integrating all of those things into each page instead, and then start adding new pages using views instead.
I understand that unless we upgrade to .NET 4 we cannot use MVC 3, so the way I see it we have the following options:
- Build a new website, somehow auto logon the new site with the same credentials when logging in on the main site, and link between the sites. I see tons of problems with this solution.
- Integrate ASP.NET MVC 2 into the existing software, adding the necessary files, and starting to add new content in MVC style, only fixing critical bugs in the old files, and over time migrate them over to MVC.
- Upgrade to .NET 4 and integrate ASP.NET MVC 3, pretty much the rest the same as option 2.
- Wait until we can schedule a full rewrite, likely to not happen in any foreseeable future.
- Don't do it, keep web forms.
Note that a full rewrite is out of scope at the moment, so some transitional period is the only option we can do right now.
Option 2 and 3 are the ones we want, the rest are just for completeness.
Are those options feasible? Do we have other options I haven't thought of?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
可以在一个网站中混合 Webform 和 MVC。请查看这篇文章。
It is possible to mix webforms and mvc in one web site. Take a look at this article.