【问题标题】:Right organization of dependencies between projects in C#在 C# 中正确组织项目之间的依赖关系
【发布时间】:2019-09-15 08:59:29
【问题描述】:

下午好。我应该如何使用 C#、.NET 平台和 Visual Studio 项目来组织以下结构?

解决方案应包含多个项目(结果为 dll 或 winmd)。 FrameworkBFrameworkC 依赖于 FrameworkA。来自FrameworkAClassA、来自FrameworkBClassD 和来自FrameworkCClassF 是公共的并且对框架用户可见;他们无法访问其他类(无法创建对象或调用方法)。在这种情况下,从ClassEClassG 我们应该能够使用来自ClassBClassC 的方法。

所以:

  • FrameworkAFrameworkBFrameworkC 应该是不同的 .dll.winmd 文件(但 BC 取决于 A)。
  • ClassBClassCClassEClassG 应该是框架最终用户私有的,但 BC 应该是可见的并由 EG 使用。
Solution
    FrameworkA
        ClassA
        ClassB
        ClassC
    FrameworkB
        ClassD
        ClassE
    FrameworkC
        ClassF
        ClassG

【问题讨论】:

    标签: c# .net visual-studio frameworks dependencies


    【解决方案1】:

    根据this answer,您可以使用 InternalsVisibleTo 属性并在 B 和 C 类上使用 Internal 访问修饰符。

    这样,第一个程序集中的类可以被其他两个使用,但不能被客户端编写的软件使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 2010-12-12
      • 1970-01-01
      • 2011-06-21
      • 2011-04-03
      • 2015-04-14
      • 2021-09-01
      相关资源
      最近更新 更多