我有一个托管4个MVC 4站点的Web角色。其中一个站点(从现在开始称之为API站点)使用MVC和Web API。当我升级Web角色时,API站点中的Web API控制器会向所有请求返回500内部服务器错误。 MVC控制器按预期工作,我知道请求至少要达到global.asax的Application_BeginRequest方法。我在Elmah日志中没有看到任何记录。我遇到的任何错误的唯一提示是事件日志中的以下内容:
属于网站“1”的应用程序“/”具有无效的AppPoolId“DefaultAppPool”集。因此,应用程序将被忽略。
由于Web角色使用带有guid作为标识符的App Pool,我不知道它来自何处。
最令人困惑的是,一旦我为API网站(这是一个guid)回收应用程序池,一切都开始正常工作。
我尝试将应用程序池重新命名为角色的启动任务的一部分,但这似乎没有任何区别。
有关如何使Web API正确启动的任何建议?
答案 0 :(得分:1)
我从未找到导致此问题的原因。
它已经到了我可以从我的机器部署并且没有解决问题,但我的同事不能。
我们尝试比较生成的.cspkg文件的内容,但没有发现任何差异。
我们现在都能够毫无问题地部署项目。
我怀疑当我们在我们的计算机上升级Azure SDK和工具时,这已得到解决。