Как вернуть экземпляр статического класса в c#

Я хотел бы получить экземпляр статического класса, но я не могу сделать это без реализации одноэлементной оболочки для нестатического класса – возможно ли это, или я что-то упускаю?

public class MyInstanceTester
 {
    public MyInstanceTester()
    {
        //this is how i get a reference to a singleton now
        MyClass instance1 = MyClass.Instance();
        //this is what is would like to do (if only the compiler would let me)
        MyStaticClass instance2 = MyStaticClass.Instance();
    }
}


public class MyClass
{
    private static MyClass _myInstance;

    static MyClass()
    {
        _myInstance = new MyClass();
    }


    public static MyClass Instance()
    {
        return _myInstance;
    }

}

public static class MyStaticClass
{
    public static MyStaticClass Instance
    {
        get
        {
            return this;
        }
    }
}
8
задан PeteN 9 May 2012 в 10:59
поделиться