C#中的Singleton在不在同一名称空间时"无法访问"?

Jak*_* S. 5 c# singleton namespaces compiler-errors visual-studio-2008-sp1

我尝试以下列方式实现单例类(我使用VS2008 SP1):

namespace firstNamespace
{
   class SingletonClass
   {
      private SingletonClass() {}

      public static readonly SingletonClass Instance = new SingletonClass();
   }
}
Run Code Online (Sandbox Code Playgroud)

当我想从不同命名空间中的类访问它时(似乎这是问题,在它工作的同一命名空间中),如:

namespace secondNamespace
{
   ...
   firstNamespace.SingletonClass inst = firstNamespace.SingletonClass.Instance;
   ...
}
Run Code Online (Sandbox Code Playgroud)

我收到编译器错误:

error CS0122: 'firstNamespace.SingletonClass' is inaccessible due to its protection level
Run Code Online (Sandbox Code Playgroud)

有人知道如何解决这个问题吗?

提前谢谢了!

Moo*_*ice 10

您缺少public类定义中的关键字.