.NET - 是否可以声明只能访问命名空间的模块成员?

标签 .net vb.net namespaces

我想声明整个命名空间可访问的模块的某些成员,但不能从外部访问它们。

这可能吗?

谢谢。

最佳答案

(为 C# 术语/示例道歉...)

不,您可以限制:

  • 到当前程序集 ( internal )
  • 命名其他程序集([InternalsVisibleTo])
  • 到子类 ( protected )

  • (以及一些组合,例如 protected internal )

    就是这样。没有基于调用者的命名空间。毕竟 - 我可以这样做:
    namespace Your.Namespace {
        public static class MyEvilClass {
           public static void DoEvil() {
               YourPrivateClass.PushTheRedButton();
           }
        }
    }
    

    我把它弄坏了...

    关于.NET - 是否可以声明只能访问命名空间的模块成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1664234/

    相关文章:

    .net - 添加到 XElement 时 System.Xml.Linq.XAttribute 命名空间被意外修改

    mysql - 使用 VB.Net 在 MySQL 中显示单个字符串上 3 个不同列的值

    .net - 如何通过反射检索字符串并将其升序连接

    vb.net - VB.NET 中的以下对象实例化有什么区别?

    ruby-on-rails - 编辑命名空间资源

    c# - 命名空间中不存在类型。你错过了一个大会吗?

    c# - 当不需要本地化时,应该在哪里存储应用程序字符串?

    c# 将进度条添加到文本框

    c# - LINQ 扩展委托(delegate)

    c# - 使用 XPATH 在带有命名空间的 XML 中选择节点的问题