繁体   English   中英

从另一个程序集中使用内部ctor实例化一个类

[英]Instantiate a class with internal ctor, from a different assembly

我以为无法从其他程序集中访问internal ctor。 今天,我第一次真正需要使用这个想法,但是它没有按我预期的那样工作-可以从其他程序集中访问它。

namespace A {

  public class AA {
    internal AA() { }
  }

}

namespace TestNamespace {

  public class TestClass {

    public void TestMethod() {
      var instance = new A.AA();     // <-- this compiles!
    }

  }

}

...所以我做错了,或者不知道我在做什么。

Assembly != Namespace

命名空间提供了一个合理的组织系统。 命名空间既可以用作程序的“内部”组织系统,又可以用作“外部”组织系统-一种表示暴露给其他程序的程序元素的方式。

程序集用于物理包装和部署。 程序集可以包含类型,用于实现这些类型的可执行代码以及对其他程序集的引用。

程序集通常是C#明智的项目。

在此处了解更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM