【问题标题】:How to hide public classes from being seen in C# Editor IntelliSense only?如何仅在 C# 编辑器 IntelliSense 中隐藏公共类?
【发布时间】:2019-12-01 01:37:54
【问题描述】:

很快,

Browsable()EditorBrowsable() 与成员一起使用。不是类本身。

因此,我需要隐藏无法使其成为内部的类的可访问性。只需将其从代码中隐藏即可。

internal 访问修饰符将使其只能在创建的类的程序集中访问。

我为什么需要那个?

我需要一些人无法访问这些课程。 只有我需要手动编写而不在 IntelliSense 中显示。

更新

我的意思是各种类型 [类、结构、枚举]。

当用户或开发人员编写例如 Employee 类时,它不会在智能感知中显示。但它可以访问并且可以正常实例化。

【问题讨论】:

  • 不清楚你想要什么......听起来你想要人们仍然可以使用的公共课程,但你想阻止它们出现在 IntelliSense 中?为什么?
  • 为什么不重要。但如何很重要。它对我来说很方便。
  • 为什么重要,因为没有理由这样做。不过我很确定这是不可能的。
  • 你没有 500 个代表可以给予。
  • 这取决于类所在的位置。如果它是相同的解决方案,则无法按照设计将其隐藏,正如 thread 中所述,对于单独程序集中的类,您可以使用来自此 thread 或此 answer EditorBrowsable 的解决方案正在工作,但不适用于同一解决方案中的类

标签: c# .net class attributes access-modifiers


【解决方案1】:

答案取决于班级所在的位置。如果它是相同的解决方案,则您无法按照设计将其隐藏,正如 article 中所述。

它不会对你隐藏它们,因为你是开发者( 解决方案)而不是(程序集的)用户。

对于单独程序集中的类,您可以应用 [EditorBrowsable(EditorBrowsableState.Never)] 属性加上[Browsable(false)]

【讨论】:

    猜你喜欢
    • 2012-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多