我有一個WCF服務需要使用JSON支持HTTP請求,但是默認的序列化程序(DataContractSerializer)不能很好地完成這項工作。我閱讀過有關Web API的最新發展,但我遇到的所有示例都需要使用模型,並且只能使用簡單的CRUD操作。我的WCF服務執行的不僅僅是CRUD操作。它也接受/返回數據類型,如字典列表。我應該如何處理這個問題的任何建議?使用ASP.NET Web API的WCF
1
A
回答
0
...默認的串行器(DataContractSerializer的)只是沒有做 工作非常好
什麼工作的DataContractJsonSerializer沒有做的非常好?我沒有遇到任何問題。無論如何,如果您想將它換成JSON.net,請參閱here和here。
我讀到有關Web API是去這些天
那麼這是商榷的方式。如果你只是想要一個HTTP API,那麼像Nancy這樣的平臺比WebAPI更容易使用。但是你通常是正確的,WebApi更喜歡WCF webHttpBinding。
...只能使用簡單的CRUD操作。我的WCF服務比CRUD操作執行更多
這是不正確的,WebAPI可以以更多RPC樣式的方式使用。例如,你可以做這樣的事情:
[AcceptVerbs("POST")]
public HttpResponseMessage DoSomeAction(Something actionParams)
{
...
return new HttpResponseMessage(HttpStatusCode.OK)
{
Content = new StringContent("Action done")
};
}
只是,這種違背REST校長,這就是爲什麼你看到的樣品一般不包括這種服務的操作。
至於推薦的方法我的優先順序是:
- 南希作爲首選方案,在Windows服務中託管
- 的WebAPI,如果有一個IIS託管需求
- 的WebHttpBinding如果沒有IIS的要求,你已經大量投資於WCF
相關問題
- 1. WCF Web API vs ASP.NET MVC JSON web服務
- 2. 從ASP.NET MVC Web Api使用WCF SOAP Web服務
- 3. 將WCF Web API中的HttpOperationHandler替換爲ASP.NET Web API
- 4. 使用與asp.net web api的gmail api
- 5. 我是否需要WCF如果我可以使用ASP.net Web API
- 6. ASP.NET Web API - 使用基類
- 7. Android庫使用asp.net web api
- 8. 單擊使用ASP.NET Web Api
- 9. 使用MVCMailer與ASP.Net Web Api
- 10. 正在使用asp.net web api
- 11. 帶HTTPS的WCF Web Api
- 12. Wcf Web APi OData
- 13. WCF vs ASP .Net Web API
- 14. wcf web服務vs asp net web api
- 15. WCF Web Api vs WebHttpBinding
- 16. WCF REST到web API
- 17. WCF Web API與windsor
- 18. 在WCF Web Api中使用Identity Foundation
- 19. 何時使用WCF REST和WEB API
- 20. Ninject使用WCF Web API Preview 5
- 21. ssl channel wcf web api?
- 22. ASP.Net Web API vs WCF - Web API可用於向單一WCF服務提供基於REST的通信嗎?
- 23. WCF服務或Web API
- 24. 使用新的ASP.NET Web API的主體
- 25. WCF Web Api作爲asp.net mvc 3應用程序的子域?
- 26. WCF Web API安全
- 27. C#WCF Web API + JSONP
- 28. 創建自託管的Web API或使用Asp.Net核心Web API?
- 29. 註冊WCF的Web API
- 30. 從ASP.Net使用ASP.Net Web API 4 Web應用程序
WCF真的是與json字典的痛苦。我已經轉向Web Api,它能夠非常直觀地處理序列化(使用newtonsoft)和反序列化。 – brando