![](/img/trans.png)
[英]Two way communication between asp.net application and windows application
[英]Two-way communication between ASP.NET Web App and C# Application
我需要建立一個雙向交流的網站和應用程序。 我將使用ASP.NET構建網站,並使用C#構建應用程序。
我將自己托管該網站,該網站將與該應用程序在同一台計算機上運行。
我不知道在兩者之間發送數據的最佳技術是什么。 C#應用程序將需要一直運行。 我應該構建一個C#控制台應用程序,然后隱藏控制台窗口嗎? 還是其他某種應用更合適?
我一直在網上瀏覽,發現了一些不同的建議,包括套接字,消息隊列,遠程處理和WCF。 一些提示將不勝感激-我是所有這一切的新手。
謝謝。
編輯將使用請求-響應模式,Web App始終是實例化請求的模式。 這就是我雙向交流的意思。
Web應用程序將向后端應用程序發送請求,后端應用程序將執行一些處理,然后將響應發送回Web應用程序。 JSON將用於來回發送數據。
我將使用SQL Server Express 2008 R2,而后端應用程序將是唯一與數據庫通信的應用程序。 該網絡應用將主要與表示層有關。
后端應用程序將具有內存對象,這些對象將在應用程序啟動時實例化(使用從數據庫加載的數據),然后持久化到數據庫(在執行期間和關閉之前)。 C#控制台應用程序是否適合此類事情?
您在評論中描述的是典型的三層應用程序。
為了清楚起見。 雙向具有多種含義,但在這種情況下,常見的是前端進行對后端的調用以及后端響應(請求-響應模式)。 后端從不調用前端-使用ASP.NET應用程序很難實現這種通信。
ASP.NET基於每個請求工作。 客戶端調用您的ASP.NET應用程序,並且正在處理客戶端請求=這就是所有邏輯的運行位置。 處理請求后,處理結束。 因此,除非您公開一些用於后端處理的特殊Web服務,否則從后端調用ASP.NET應用程序不適合此操作,但是即使在此之后,如果沒有ASP.NET中的某些內部狀態保留,它也不會與客戶端請求處理相關聯應用。
WCF可以工作,您可能還希望研究使用/編寫Web服務,但是取決於您是希望Sync還是Async看起來更像是一個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.