如何从MVC项目中引用经典的asp文件

时间:2015-03-06 16:09:20

标签: asp.net-mvc-4 asp-classic hybrid

道歉,如果这已经在其他地方得到解答,我一直在寻找一个小时并且没有任何牵引力。我目前有一个经典的ASP网站(不是ASP.Net webforms)。我希望使用MVC实现一个新功能,但是可以使用iframe将其显示为网站的一部分当前形式。

目前我有一个Visual Studio 2010解决方案,其中包含网站和MVC 4互联网项目。我的理解是我可能不得不使用MVC项目作为启动项目,然后从家庭控制器索引方法重定向到启动asp网站的default.asp页面。

  1. 有没有更好的方法可以做到这一点,还是我在正确的轨道上?

  2. 这甚至可以吗?

1 个答案:

答案 0 :(得分:1)

据我了解你的问题,你想要做的是在经典的asp页面中显示你的一个.net mvc页面的输出。尽管有更多无缝方式,但使用Iframe应该可以做到这一点。正如我对其他答案的评论中所解释的那样,经典ASP和ASP.net页面可以存在于同一个网站中,但是没有一个C#代码对Classic页面有任何意义。将您的网站视为位于同一根文件夹中的两个独立项目可能会有所帮助。

而不是iframe我建议您尝试服务器http请求。这有效的做法是将.net mvc页面的输出视为外部网页,并将内容粘贴到Classic asp页面中。代码看起来像这样

<%
    Set objXML = Server.CreateObject("MSXML2.ServerXMLHTTP.6.0")
    objXML.Open "GET", "http://full-url-of-your-.net-mvc-page", false 
    objXML.Send("")
    Response.Write objXML.responseText
%>

IIS允许您指定任何您想要作为网站登录页面的页面,您可以通过IIS管理器执行此操作