MVC iframe与经典的aspx

时间:2009-11-30 14:36:39

标签: asp.net-mvc

我有一个工作正常的MVC应用程序;但现在我需要放一个视图,一个IFRAME,其源代码是一个ASPX页面(经典的aspx页面,用c#编程),这样做的原因是该页面位于我们公司之外,我只需要消耗它传递了一个查询字符串。我在iframe上做了以下事情:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/SiteIC.Master" Inherits="System.Web.Mvc.ViewPage" %>

<table height="20%" cellSpacing="0" cellPadding="0" width="100%" border="0">
    <tr>
        <td height="400" valign="top">
            <iframe name="myiframe" scrolling="no" id="myiframe" width="100%" height="100%" frameborder="0" src="folder/somePage.aspx?id=123"></iframe>
        </td>
    </tr>
</table>

为了测试prouposes我将iframe指向一个简单的空apsx页面,我将该页面放在与包含iframe的实际视图相同的文件夹中。

但是当我执行应用程序时,iframe返回错误404:无法找到资源,显示我创建的虚拟aspx页面的正确路径。我是否需要通过IIS授予一些权限?或者我还缺少什么。

感谢。

2 个答案:

答案 0 :(得分:0)

您需要在src参数中输入外部网站的完整网址。你提到它在公司外面所以我认为它在不同的主机上。

答案 1 :(得分:0)

要使.aspx页面正常工作,您需要为现有的global.asax文件启用路由。在您注册路线的global.asax中添加:

RouteTable.Routes.RouteExistingFiles = true;