隐藏程序集类

本文关键字:程序集 隐藏 | 更新日期: 2023-09-27 17:58:40

我有一个程序集库,其中包含一个名为"Architecture"的类。在另一个程序集中,我有一个名为"ArchitectureManager"的类,它可以帮助我实现当前程序集的一些特定类类型。

最后,我有一个第三个程序集项目需要"ArchitectureManager",问题来了如何从第三个组件项目中隐藏"Architecture",因为第二个程序集需要它,我也不能只是将项目二合并到项目一。

这里有一个片段需要进一步澄清:

//Assembly one
public class Architecture
{
}
//Assembly two
public class ArchitectureManager
{
  //Implement some Architecture class methods
}
//Asembly three needs ArchitectureManager but doesnt need to know about Architecture.

隐藏程序集类

您可以将InternalsVisibleTo属性用于包含Architecture的程序集。将其标记为internal,并允许其仅对其他程序集可见。

请参阅此MSDN链接:http://msdn.microsoft.com/en-us/library/system.runtime.compilerservices.internalsvisibletoattribute.aspx

您还可以在SO上看到其他问题:https://stackoverflow.com/questions/tagged/internalsvisibleto

但是,您的Architecture对象对其他类不可见,有什么具体原因吗?我自己很少这么做。。