2010-12-16 78 views
0

我創建了兩個項目來理解.NET Remoting的基礎知識。.NET Remoting - DLL引用困境

  1. 服務器項目:我在服務器解決方案中創建了RemoteObject的類庫。
  2. 客戶端項目:我從該項目創建代理以使用服務器的RemoteObject。

問題:客戶端有兩個知道它是遠程處理的類型。但它怎麼能這樣做呢?你認爲客戶端應該在服務器項目中引用RemoteObject dll嗎?如果這些項目分佈在不同的機器上,我認爲是沒有用的。同樣,將dll複製到客戶端聽起來很糟糕。那麼最佳解決方案應該是什麼?

謝謝

回答

1

在單獨的dll中創建具有所需功能的接口。

在服務器中,從該接口派生並實現功能。在客戶端中,引用接口併爲其創建遠程代理,這將使您可以訪問服務器實現,但同時您不會將客戶端的服務器代碼發送給客戶端。

1

您需要3個項目:

  • 一個具有共享接口
  • 一個與服務器實現這些接口的
  • 一個與客戶端組件。

服務器和客戶端都需要引用具有共享接口的程序集。