2014-07-15 40 views

回答

2

基本上,無論何時您需要使用http webapi以外的傳輸層都無法使用。例如通過消息隊列,進程間通信(NamedPipe),直接TCP Socket連接進行通信。

的WebAPI沒有Peer2Peer通信,雙向通信,可靠的消息,交易流程,消息級安全,...

+0

能否請您詳細闡述更多關於這一點。例如,如果我將Web套接字添加到混合中,那麼我可以使用Web API的Peer2Peer,那麼這不是WCF Peer2Peer通信的替代方案嗎? –

+0

有了SignalR,你可以做Bi-Di,沒有真正的P2P。而SignalR是一項完全獨立的技術。我的意思是,如果你需要5-7個獨立的框架(System.Messaging,.NET遠程處理,WebAPI,SignalR,...),你可以替換WCF,但是WCF的全部重點是統一所有這些小框架。目前看起來我們正試圖再次將它們分開。儘管如此,WebAPI和SignalR卻是很好的技術。但是,如果我需要桌面應用程序和Windows服務之間的通信,我寧願使用WCF而不是在我的Windows服務中託管WebAPI來通過HTTP執行IPC。 – codeworx

+0

如果您已經提供了需要企業對企業溝通的場景,該怎麼辦?您正在使用.NET environement,並且您不在乎其他業務正在使用什麼。通常您的通信媒介將通過http。你會使用WCF的Web API的這種情況下,爲什麼? –