2015-08-29 120 views
0

我有一個新的.net webapi應用程序,可以在我的開發框上正常工作,但無法在我們的IIS8服務器上運行它。 webapi可以通過瀏覽器或應用程序返回XML格式的數據,但是當我切換到MediaTypeWithQualityHeaderValue(「application/json」)時,我只是從IIS獲取500內部服務器錯誤響應。WebAPI在Windows Server 2012上啓用JSON支持IIS 8

所以在IIS 8到目前爲止,我有: 增加了一個以.json MIME類型(應用程序/ JSON) 安裝傳統的ASP(seemded需要這爲下一步) 增加了一個以.json處理程序映射(以.json/C:\ WINDOWS \ SYSTEM32 \ inetsrv \ asp.dll/JSON)

如果任何人都可以給我任何線索,我錯過了什麼,那將是偉大的。

謝謝

+0

目前我不得不轉換到XML,但這並不直接,因爲我從命名空間'http://schemas.datacontract.org/2004/07/arbEvolveModel'中獲取了錯誤Expecting元素'SqlReferenceData'。 webApi'..遇到名爲'SqlReferenceData'的'元素',命名空間爲'http://schemas.datacontract.org/2004/07/arbEvolveWebAPI.webApi'。 – ac66

回答

0

目前我不得不切換到XML,因爲時間不利於我。但是這並不簡單,因爲我得到了錯誤
期望從命名空間'http://schemas.datacontract.org/2004/07/arbEvolveModel.webApi'的元素'SqlReferenceData'。遇到名爲'SqlReferenceData'的'元素',命名空間'http://schemas.datacontract.org/2004/07/arbEvolveWebAPI.webApi'。 爲了解決這個問題,我不得不將一個ContractNamespace添加到web api項目和客戶端應用程序中。這兩個引用略有不同,因爲它們必須將自己的名稱空間轉換爲通用名稱空間。所以爲了參考我不得不使用和。 感謝XML deserializing only works with namespace in xml的指導。 希望這可以幫助別人。

0

我終於通過在服務器上運行客戶端(它是一個VB WPF客戶端)來解決這個問題。通過這樣做,我可以看到完整的錯誤消息,告訴我服務器缺少一個DLL - 不知道爲什麼這沒有出現在XML下載。一旦錯誤得到解決,那麼上面的步驟就允許JSON工作。萬歲!

相關問題