我們有一個用傳統ASP編寫的網站,然後我開始使用Web窗體進行擴展。這些擴展名存在於主文件夾的子文件夾中。現在我們已經決定我們更願意使用MVC3。另外,由於我們希望隨着時間的推移將我們的所有站點轉換爲MVC3,因此我們將在應用程序根目錄中託管MVC代碼。我發現了一些其他問題,人們對我有類似的問題,但沒有解決方案。問題很簡單,我的Web表單應用程序似乎無法停止從根文件夾繼承web.config設置,因此,它不會運行,它可能會抱怨丟失的dll或抱怨運行錯誤的.NET版本,或者抱怨我需要刪除一些設置(我試過並且永遠無法正常工作)。子文件夾中的應用程序還託管着一個由我們的應用程序調用的Web服務,並且它還運行HTTP處理程序來保護我們的映像內容,所以它裏面有一些東西。我是否需要在子文件夾中運行我的MVC網站?有什麼方法可以在Web窗體應用程序上方的文件夾中使用MVC?我更願意做一些事情,讓他們共享會話數據,但在尋找可能在這個階段是不可能的......在同一IIS7實例上託管MVC和webforms站點 - web.config繼承
所以要明確的文件夾結構爲:
<root>
contains asp site and MVC site.
<subfolder>
contains webforms application
</subfolder>
</root>
和我的問題讓子文件夾運行,最好在與MVC應用程序相同的會話中運行。
是的,我們使用數據庫來獲取ASP.NET和ASP之間的數據。它確保會話在Web表單和MVC之間保持一致,這是我的擔憂。路由不是我的問題,我可以在根中加載一個aspx,但我無法從子文件夾中的應用加載任何東西。 – cgraus 2012-01-10 04:10:37
路由幾乎肯定會成爲問題的一部分,因爲它將子文件夾路由到控制器 - 必須停止。這就是說,如果你能提供詳細的確切的錯誤,我們可以幫助更多。 – 2012-01-10 04:14:57
那麼,我需要花一些時間來做web.config更改,以獲得我所得到的不同錯誤的整個色域,但他們歸結爲'不允許重複web.config部分'和'無法加載dll因爲你的網站運行在.NET的舊版本上「。我的解決方案是能夠運行這個應用程序,所以它不會繼承根文件夾的設置。我不認爲任何代碼改變,不會這樣做,將解決我的任何特定的錯誤信息。 – cgraus 2012-01-10 04:19:15