我最近加入了一个管理Classic ASP Web应用程序的小组。它一直很好地满足了我们团队的需求。但是,在我加入之前,我决定转向ASP .Net。由于我们主要是ASP开发人员,因此我们在ASP .Net中编写代码,就像在Classic ASP中一样(大多数情况下)。是否有可能将MVC引入此应用程序/项目?
谢谢!
答案 0 :(得分:2)
简短的回答是肯定的。
Scott Hanselman之前写过关于this topic的文章。
根据团队技能的不同,您可能会发现难以加快速度 - 可以在Classic ASP中编写干净的MVC样式代码,但大多数人都没有。
答案 1 :(得分:2)
是的,可以在传统的WebForms项目中使用MVC。几年前我将一个大型WebForms项目迁移到MVC 2,这是我的发现(我已将它们更新为反映MVC 3)
您需要将以下引用添加到您的Web项目中:
System.Web.Abstractions, System.Web.Extensions程序, System.Web.Helpers, System.Web.Mvc, System.Web.Routing
您可以通过更改ProjectTypeGuids启用VS扩展:
为MVC内容添加以下标准文件夹:
附加说明:
答案 2 :(得分:1)
当然技术上可行。然而,听起来这可能是一种文化冲击,因为MVC与Classic ASP或ASP.NET WebForms的工作方式完全不同。我认为这样做是值得的 - 或者只是坚持使用ASP.NET WebForms,如果这看起来更自然。但是如果你还没有完全致力于WebForms,那么MVC似乎也很容易转移到IMO。
答案 3 :(得分:1)
是。我参与了一个以普通ASP.NET开始的项目,后来添加了一些ASP.NET MVC页面。最终我们更喜欢MVC,最终我们将所有WebForms页面迁移到使用MVC。但总的来说,这两个系统一起工作得非常好。
这是我记得的唯一真正的问题:WebForms的工作原理是将整个页面包含在一个大的<form>
标记中。由于HTML不允许嵌套<form>
标记,因此通常无法在WebForms页面中使用MVC表单。将WebForms页面与MVC内容分开,避免在可能出现在WebForms页面上的MVC内容中使用HTML表单,或者使用弹出对话框来创建在WebForms DOM区域之外创建的表单。