Как вы можете видеть по моему нику, я новичок на самом деле узнал о шаблоне Singleton, где у меня возникла одна проблема. Прежде чем я узнаю, что статические конструкторы всегда выполняются перед стандартными конструкторами, но в этом коде ниже результат отличается, сначала я вижу строку «Insta», а затем «Static», почему это происходит?C# - Singleton Pattern
sealed class Singleton
{
private static readonly Singleton instance;
private Singleton()
{
Console.WriteLine("Insta");
}
static Singleton()
{
instance = new Singleton();
Console.WriteLine("Static");
}
public static Singleton Instance
{
get
{
return instance;
}
}
}
class Program
{
static void Main()
{
Singleton s1 = Singleton.Instance;
}
}
Связанный: http://csharpindepth.com/Articles/General/Singleton.aspx – jbabey
Не уверен, что на рассуждения ваши ожидания - «статический конструктор называется первым» не означает «весь код в статическом конструкторе, магически выполненный до всех вызовов членам класса» (конструктор экземпляра в вашем случае). –