我有一個名爲ProductsController的控制器,我使用索引方法加載了一個名爲WebForm1.aspx的Web窗體的索引視圖,索引視圖已經設置好,工作正常。現在我想在索引視圖中添加一個iframe以顯示WebForm1.aspx的內容。這兩個視圖都在MVC項目的相同文件夾視圖/產品中。我做了以下內容:iframe在MVC視圖加載asp.net web窗體
<iframe src="/ProductsController/Index?WebForm1.aspx" width="1000" height="400">
</iframe>
我的意見/ web.config中設置爲下一個:
和WebForm的繼承是未來:
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
然而, iframe會顯示一條錯誤消息:「HTTP 404 - 您正在查找的資源(或其某個依賴項)可能已被刪除編輯,名稱已更改,或者暫時不可用。「
我也嘗試添加到我的Global.asax文件的下一行:
RouteTable.Routes.RouteExistingFiles = true;
也失敗了,
的獨特的方式,我得到的iFrame顯示而空是使用全物理路徑如下:
<iframe src="C\:Folder1\Folder2\ ...\Views\Products\WebForm1.aspx" width="1000" height="400">
</iframe>
有人可以解釋爲什麼它不起作用嗎?以及如何使其工作?謝謝。
「/webforms/webform1.aspx」開放使導航鏈接導航返回到你的MVC網站,你的意思該webforms直接在項目的根路徑?如果是的話,它不起作用。 – 2013-03-16 17:16:31
這是第二個答案...我的意思是,如果您有一個從System.Web.UI.Page(WebForm1.aspx)繼承的aspx文件,那種文件應放置在Views文件夾之外,那樣你可以通過「普通」url調用它,而不通過控制器傳遞請求......另一種aspx是從「System.Web.Mvc.ViewPage」繼承的那些文件,這些文件的行爲與Razor文件相同,應放置在視圖文件夾和請求是通過一個控制器。 – jherrera 2013-03-16 17:33:54
感謝您的解釋,更新了我的問題,請看看。 – 2013-03-16 18:15:05