簡體   English   中英

正確組織C#中項目之間的依賴關系

[英]Right organization of dependencies between projects in C#

下午好。 我應該如何使用C#,.NET平台和Visual Studio項目組織以下結構?

解決方案應包含多個項目(結果為dll或winmd)。 FrameworkBFrameworkC依賴於FrameworkA ClassAFrameworkAClassDFrameworkB ,並ClassFFrameworkC是公開的,可見的框架的用戶; 他們無法訪問其他類(不可能創建對象或調用方法)。 在這種情況下,從ClassEClassG我們應該能夠使用ClassBClassC的方法。

所以:

  • FrameworkAFrameworkBFrameworkC應該是不同的.dll.winmd文件(但BC依賴於A )。
  • ClassBClassCClassEClassG應該是框架最終用戶的私有,但BC應該是可見的並由EG
Solution
    FrameworkA
        ClassA
        ClassB
        ClassC
    FrameworkB
        ClassD
        ClassE
    FrameworkC
        ClassF
        ClassG

根據這個答案 ,您可以使用InternalsVisibleTo屬性並在類B和C上使用內部訪問修飾符。

這樣,第一個程序集中的類可以由其他兩個使用,但不能由客戶端編寫的軟件使用。

暫無
暫無

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

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