内部方法代码重用

Fli*_*ter 0 c# code-reuse internal

假设您有两个完全独立的项目:项目1和项目2.一个是Windows应用程序,一个是Web应用程序.

如果两个项目都需要A,B和C类用于内部使用,那么在两个项目之间的类中推广代码重用的最佳方法是什么(特别是代码随着时间的推移而更新)?

  • 强制这些类是公共的,打破整洁的公共接口,并从一个项目到另一个项目进行引用(哎呀!)
  • 为共享组件创建第三个项目,然后仅在内部为主项目使用它们(哎呀!)
  • 将项目1中的类"添加"到项目2(在项目文件夹之外)并接受项目2将不具有在其项目文件夹中构建所需的所有类(可接受但不理想)
  • 依赖于复制和粘贴,源代码控制交叉引用或其他一些非编程特技.
  • 其他一些技术目前正在躲避我(手指交叉......)

请注意,这些是两个项目所必需的相同的INTERNAL辅助类.

Joh*_*sch 5

您可以将友好程序集的InternalsVisibleTo程序集属性用于允许程序集访问internal另一个程序集中标记的类型和成员.