Имеем след. код
public class SingleTest{
private static SingleTest st;
private SingleTest() { }
public static SingleTest GetInstance()
{
if (st == null) st = new SingleTest();
return st;
}
}
public partial class _Default : System.Web.UI.Page
{
private SingleTest st = SingleTest.GetInstance();
protected void Page_Load(object sender, EventArgs e) { }
}
Запускаем первый раз — SingleTest.st содержит null и соответственно инициализируется через GetInstance
Далее останавливаем отладку (Shift+F5) и запускаем еще раз — SingleTest.st сразу же содержит значение. Из за чего так и как с этим бороться?