2011-07-26 17 views
0

我正在創建一個包裝類(比如程序集D),它擴展了被包裝的一個公共類(比如說類X)的實現。現在在彙編B(包裝)中有另一個類(稱爲Y類),我想向用戶公開。現在我有兩個選項c#暴露一個類可用在你的程序集包裝的程序集中

在程序集B中包裝類Y並將其公開給用戶。這個選項的缺點是我將不得不重寫組件B中類X的確切實現。

我的問題在這裏。是否有可能以某種方式在程序集D中創建代理類,將類Y公開。

將這兩個程序集公開給用戶(我很樂意這樣做),並以某種方式將類X隱藏給程序集B中公開的用戶(因爲我已經將程序集X中的程序集D包含在程序集D中)。請記住,我無法訪問程序集B中的代碼。

我的問題在這裏。是可以做選項b。即以某種方式隱藏用戶的組裝類別X.

+0

你剛剛沒問過嗎? –

回答

0

你可以在裝配d擴展類Y「不」的任何變化:

public class Yex : Y { } 

然後你只需要公開集會d給用戶,因爲他們可以每Yex訪問Y

+0

感謝您的回覆!如果我這樣做,我將不得不要求用戶包含程序集B.我希望該用戶只需要將程序集引用到程序集D,並且不應該要求添加程序集B的引用。 – Vishu

相關問題