我有一个包含一些公共类和许多内部实用程序类的类库。这些实用程序对链接到DLL的人员不可见/不可使用。
namespace MyProject {
public class PublicClass { }
}
namespace MyProject {
internal class UtilClass { }
}
当我这样做时,VS会触发错误,例如“ UtilClass比PublicClass.Member难以访问”
难道我做错了什么?我应该怎么做?我见过带有私有类的库,这些类不能被我使用。如何获得这种行为?
谢谢。
最佳答案
这意味着您在UtilClass
中具有类型为PublicClass
的公共成员。编译器不允许这样做,因为外部程序集能够访问公共成员,但是成员本身的类型是内部的,因此不可访问。
使该成员成为内部成员,而不是公开成员。