[英]Right organization of dependencies between projects in C#
下午好。 我應該如何使用C#,.NET平台和Visual Studio項目組織以下結構?
解決方案應包含多個項目(結果為dll或winmd)。 FrameworkB
和FrameworkC
依賴於FrameworkA
。 ClassA
從FrameworkA
, ClassD
從FrameworkB
,並ClassF
從FrameworkC
是公開的,可見的框架的用戶; 他們無法訪問其他類(不可能創建對象或調用方法)。 在這種情況下,從ClassE
和ClassG
我們應該能夠使用ClassB
和ClassC
的方法。
所以:
FrameworkA
, FrameworkB
和FrameworkC
應該是不同的.dll
或.winmd
文件(但B
和C
依賴於A
)。 ClassB
, ClassC
, ClassE
和ClassG
應該是框架最終用戶的私有,但B
和C
應該是可見的並由E
和G
。 Solution
FrameworkA
ClassA
ClassB
ClassC
FrameworkB
ClassD
ClassE
FrameworkC
ClassF
ClassG
根據這個答案 ,您可以使用InternalsVisibleTo屬性並在類B和C上使用內部訪問修飾符。
這樣,第一個程序集中的類可以由其他兩個使用,但不能由客戶端編寫的軟件使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.