我认为无法从其他程序集访问internal
ctor。今天我第一次真正需要使用这个想法,但它并没有像我预期的那样工作 - 它可以从不同的程序集中访问。
namespace A {
public class AA {
internal AA() { }
}
}
namespace TestNamespace {
public class TestClass {
public void TestMethod() {
var instance = new A.AA(); // <-- this compiles!
}
}
}
...所以我做错了,或者我不知道自己在做什么。
答案 0 :(得分:2)
Assembly != Namespace
命名空间提供逻辑组织系统。命名空间是 用作&#34;内部&#34;程序的组织系统,以及 &#34;外部&#34;组织系统 - 一种呈现方案的方式 暴露于其他程序的元素。
虽然
程序集用于 物理包装和部署。一个程序集可能包含类型, 用于实现这些类型的可执行代码,以及对其他类型的引用 组件。
程序集通常是项目,C#
明智。
详细了解here。