我有一個天藍色的網站(MVC)配置和一切工作正常,直到我試圖添加一個WebAPI項目到部署到天藍色的解決方案。部署在天藍色的應用程序使用錯誤的web.config
我的虛擬目錄映射看起來像
- 虛擬-----物理--- IsApplication
- /-----網站\ wwwroot的\ ------ IsApplicaiton( yes)[Path for mvc project] Application
- /api ---- site \ services \ ------- IsApplication(no)
- /api/code ------ site \ services \ code \ ------- IsApplication(是)[WebAPI項目的路徑]
MVC應用程序工作正常,但WebAPI應用程序(它是VS WebApplication - > WebAPI2的空腳手架)不是。在修改WebApi的web.config
以禁用自定義錯誤頁面後,我發現問題在於MVC應用程序的web.config
中包含的命名空間(當然,WebAPI項目不具有對它的引用,它不應該)。但是,爲什麼WebAPI甚至會因爲坐在MVC應用程序中的web.config
而感到困擾呢?
如果你在同一個運行的Web API site/apppool作爲MVC,然後在App_Start()方法中需要優先順序。但這聽起來像你沒有那樣做。你能否包括例外細節? –
我不知道Azure中的apppools以及它是如何工作的。但是我想要做的是在一個站點下託管幾個應用程序。 MVC應該是WebAPI應用程序的客戶端。據我瞭解web.config繼承它應該從父文件夾繼承設置而不是父虛擬目錄。 – user2184057