我有一个在.NET 4.5上运行的现有ASP.NET网站。我需要将ASP MVC 4项目(它是自己的全功能Web应用程序)集成到其中,以便当用户导航到某个页面时,ASP MVC应用程序在页面内启动 - 几乎就像它在一个页面中一样iframe
。
在主要解决方案中,我可以将它们都设置为启动项目,但这显然不是我想要的。有人能指出我如何做到这一点的方向?我之前从未使用过WCF,但这是否可以用于它?谢谢你!
答案 0 :(得分:0)
您可以创建混合网络表单 - MVC应用程序。
要做到这一点,你需要:
这样,您就拥有一个支持MVC和WebForms的ASP.NET应用程序,并使用相同的身份验证,会话等。
然后你可以进行这种集成: - 制作完全MVC或完全webforms的页面。如果您正在使用母版页,则需要为Web表单创建母版页,并为MVC创建一个布局(这可能非常难或非常简单,具体取决于其内容和设计) - 创建一个webforms页面并使用AJAX和MVC部分视图集成MVC页面
Aprt来自我的评论,这篇博文将对您有所帮助:Integrating ASP.NET MVC 3 into existing upgraded ASP.NET 4 Web Forms applications
顺便说一句,这不是理论上的......我有一个包含大量页面,区域和视图的Web应用程序,它使用这种技术,并且它可以完美地运行。我不得不重做母版页面的设计(布局和CSS),这样两种页面看起来都很相似。我很幸运能够使用SQL XML查询和XSLT在webforms占位符中呈现菜单,因此在MVC布局中重复使用它非常容易。您可以在主页面和MVC布局中执行类似的操作(我的意思是手动渲染HTML,并在两个页面中使用它,以便它只执行一次)
你可以花点时间让它发挥作用,但值得付出努力。