我有一個包裝Dynamics CRM Online Web服務並提供REST API的WebApi項目。我有一個簡單的控制器,從CRM獲取一些聯繫人並將它們返回給調用者。部署到Azure的WebApi - 控制器不工作(500錯誤)
當我在本地模擬器中運行它時,一切正常。但是,將項目部署到Azure時,我可以訪問主頁,但控制器都返回http 500錯誤。爲什麼會發生?如何解決問題以獲取更多詳細信息?
UPDATE
問題是運行在Azure的Web角色的服務器實例2012沒有Microsoft.IdentityModel.dll的。我通過在RDP中打開Web角色實例,安裝Fiddler以及將Fiddler的請求發送到本地IIS服務器來發現此問題。它回答了詳細的錯誤。
現在我的問題是搞清楚如何在Windows Azure Web角色上啓用IdentityModel。您應該可以通過Server 2012添加角色和功能嚮導添加它,但它完全鎖定在Web角色上。您無法檢查任何尚未檢查的框。這甚至有可能嗎?
嘗試這篇文章[http://blogs.technet.com/b/dodeitte/archive/2012/07/20/issue-when-installing-windows-identity-foundation-on-windows-server- 2012.aspx](http://blogs.technet.com/b/dodeitte/archive/2012/07/20/issue-when-installing-windows-identity-foundation-on-windows-server-2012.aspx) –
感謝Guido,看起來很有幫助。它不適用於我,因爲Windows Azure中的Web角色不允許啓用.NET 3.5(或者至少必須在啓用它之前安裝它,必須通過安裝介質或Windows Update完成安裝,這兩者在Azure Web角色中似乎都不可能)。但這是一個不同的問題。謝謝你的回答。 –
只需在您的項目參考中將本地複製設置爲true即可。 –