【发布时间】:2016-10-08 02:23:51
【问题描述】:
我已经配置了一个 azure 网站 (MVC),一切正常,直到我尝试将 WebAPI 项目添加到部署到 azure 的解决方案中。
我的虚拟目录映射看起来像
- 虚拟 ----- 物理 --- IsApplication
- / ----- site\wwwroot\ ------ IsApplicaiton (yes) [mvc 的路径 项目] 应用
- /api ---- site\services\ ------- IsApplication (no)
- /api/code ------ site\services\code\ ------- IsApplication (yes) [WebAPI 项目的路径]
MVC 应用程序工作正常,但 WebAPI 应用程序(它是来自 VS WebApplication -> WebAPI2 的空白脚手架)不是。在修改 WebApi 的 web.config 以禁用自定义错误页面后,我发现问题出在 MVC 应用程序的 web.config 中包含的命名空间(当然,WebAPI 项目没有对它的引用,也不应该)。但是,当 WebAPI 有自己的时候,为什么还要在 MVC 应用程序中使用 web.config 来打扰它呢?
【问题讨论】:
-
如果您在与 MVC 相同的站点/应用程序池中运行 Web api,那么 App_Start() 方法中需要一个优先顺序。但听起来你没有这样做。能否包含异常详细信息?
-
我不知道 Azure 中的 apppools 以及它是如何工作的。但我想做的是在一个站点下托管几个应用程序。 MVC 应该是 WebAPI 应用程序的客户端。据我了解 web.config 继承它应该从父文件夹而不是父虚拟目录继承设置。
标签: c# asp.net-mvc azure asp.net-web-api web-config