【问题标题】:static class availability problem静态类可用性问题
【发布时间】:2009-07-17 08:19:18
【问题描述】:

任何人都可以帮助解决这个问题,我真的看不出有什么问题。

我有一组类都在同一个命名空间和程序集中。这些类之一是静态的。由于它与其他类在相同的命名空间和程序集中声明,因此我希望它们都可以访问它。

但事实证明,除了其中一个之外,所有其他人都可以访问它;讽刺的是,最需要使用它的一类。

该类的名称在此类的上下文中无法识别(不会出现在智能感知中)。在所有其他课程中都很好。

有人有什么想法吗?
我错过或误解了什么......?

【问题讨论】:

  • 我认为您需要向我们展示一些代码。
  • 能否把静态类和不能用的类的源码贴出来?
  • 有兴趣知道为什么这个问题在关闭一年后被否决...?

标签: c# static scope


【解决方案1】:

您可能有该类的成员与静态类同名,并且该名称具有优先权。

您可以选择以下任何一种:

  • 重命名碰撞成员
  • 重命名静态类
  • 通过命名空间限定名称引用静态类
  • 创建一个使用别名(如下所示)以提供另一个名称来访问它

代码(我必须有这一行,否则它认为代码是子弹的延续?):

using AliasName = Namespace.StaticClassName;

【讨论】:

  • 唉,这是一个名称冲突。我确实尝试注释掉所有名称冲突的方法,但这并没有帮助。重命名类修复了它,确实应该尝试而不是无论如何注释掉 - 更快。早上喝咖啡需要我思考!
猜你喜欢
  • 1970-01-01
  • 2014-08-27
  • 1970-01-01
  • 1970-01-01
  • 2011-02-17
  • 2016-11-21
  • 1970-01-01
  • 1970-01-01
  • 2017-09-18
相关资源
最近更新 更多