簡體   English   中英

如何在本地網絡的一台計算機上運行業務邏輯而在另一台計算機上運行GUI?

[英]How to run business logic on one computer of the local network and GUI on another?

我有一個WPF應用程序運行在連接到本地網絡的計算機上,並且有一個特殊的設備連接到此計算機,該設備由應用程序控制。 有沒有簡單的方法可以將GUI(WPF XAML)遷移到連接到同一網絡的另一台計算機,以使GUI和BL保持耦合?

我一直在研究WCF,但是有很多限制,這會使WCF適應我的情況非常耗時。 如果WCF可以處理一個ServiceContract中的屬性(根本不支持)和事件,則它可以完美地工作。

一個簡單的方法? 沒有。

如您所述,您可以使用WCF。 您還可以使用SignalR,消息總線,標准TCP套接字或許多其他技術。

但是,這些方法都不能給您帶來您似乎想要的絕對透明性。 它們全都適用於您要在服務器上調用方法的概念,並且該方法可能會也可能不會返回數據。 對於TCP,您發送數據並可能取回數據。 您不僅可以訪問/更改屬性或偵聽事件(SignalR和WCF確實支持服務器->客戶端調用,這與事件並不完全相同 ,但是可以像事件一樣工作)。

我認為您需要考慮實現標准的客戶端/服務器模型,這可能會給您帶來不便。

不,沒有簡單的方法可以做到這一點。
如果您的GUI和BL在不同的機器上運行,則必須實現特殊代碼以在應用程序之間執行網絡通信(即GUI和BL是兩個不同的應用程序),並且如果GUI和BL緊密耦合,則幾乎不可能而且毫無意義。這樣做(與網絡相關的代碼將包含龐大的服務合同,而遠程處理將消耗大量時間,使UI交互緩慢而痛苦)-應該對其進行重構。

但是,有一種解決方法,您可以在同時具有BL和GUI的計算機上運行您的應用程序,然后在不同的計算機上顯示該GUI:RemoteDesktop或RemoteApp( https://technet.microsoft.com/zh-cn/ library / cc755055.aspx )可以提供幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM