2015-11-08 87 views
-1

我試圖建立在C#中使用WCF的microService現場支持聊天應用程序和無盡的搜索後,我仍然無法找到答案,希望這裏有人能指出我在正確的方向。如何在C#中創建實時支持聊天應用程序?

我的問題是,而不是一個典型的聊天室,用戶發送廣播消息到所有連接的客戶端,我需要的應用程序更喜歡網站上,如亞馬遜或易趣找到了現場支持的應用程序。

理想情況下,多個客戶支持代理將在其機器上安裝WinForms聊天應用程序,當客戶打開聊天窗口(aspx頁面)時,它將連接到服務器/服務,然後服務器/服務將調用所有連接客戶支持代理,直到一個答案。此時,客戶和代理將連接到一個私人聊天窗口。

可能有人請給我如何做到這一點一些見解或想法?

感謝,

歐文

回答

1

您可以使用ASP.NET SignalR這對於使得開發實時網絡功能,輕鬆ASP.NET開發人員的庫。 SignalR允許服務器和客戶端之間的雙向通信。服務器現在可以將內容即時推送到已連接的客戶端,

Here你可以找到更多的細節和有關SignalR很多教程。

+0

啊謝謝你,將有一個良好的閱讀這個! –

+0

@WelshWatson:快樂閱讀... :) –

1

在谷歌第一resoult

A WCF-WPF Chat Application

Video tutorial

WCF Chat Application

ASP.NET Chatting using WCF Services and JSon

A simple peer to peer chat application using WCF netPeerTcpBinding

個有用的講座 HTML 5 Web Sockets

總是先問谷歌,你上面有一些準備使用,你可以複製到您的解決方案

編輯項目:

另外,作爲提示,我可以推薦雙應用程序級的消息隊列,然後爲具有會話和用戶標識符的消息製作索引。下一步將是基於等待對象的彈出和推送邏輯的WCF。以較低的成本,你需要鎖定隊列。 WCF將做很多工作。此外,代理管理和消息發送的應用程序內部也可能出現問題,因此專用於聊天的代理服務器將是最好和最安全的想法。並瞭解雙工服務,可以在這裏有用DUPLEX SERVICE

+0

我張貼,因爲這些樣的答卷上下票沒有解釋這裏之前與自己痛苦。所有這些都是向所有連接的客戶端廣播消息的聊天室,這不是我正在尋找的。我需要一個客戶撥打所有連接的客戶端的解決方案,但是當他們回答他們的聊天時就變成了私人。 –

+0

@WelshWatson就拿WCF聊天應用程序爲例,改變邏輯,在這裏,你可以像使用SignalR那樣使用SignalR來獲取notifikaction,或者實現我們自己的obersers。您的帖子現在就像我的答案。我們不知道:**你有什麼**,**你有什麼基礎設施**但是確定讓我編輯我的帖子,包括猜測,並記住stackoverlow不像論壇,我們不嘮叨,我們在這裏幫助你解決問題。如果你寫了很好的問題,你會得到很好的回答:) –

+0

啊,我看到了,謝謝你的糾正,我總是想知道爲什麼職位被輕鬆地投下來和投票。編輯是非常有益的,謝謝:) –