Znaci, treba mi singleton u asp.net-u ali da bude na nivou sessije.
Code:
using System;
public class Singleton
{
private static Singleton instance;
private Singleton() {}
public static Singleton Instance
{
get
{
if (instance == null)
{
instance = new Singleton();
}
return instance;
}
}
}
using System;
public class Singleton
{
private static Singleton instance;
private Singleton() {}
public static Singleton Instance
{
get
{
if (instance == null)
{
instance = new Singleton();
}
return instance;
}
}
}
To je pattern, ali meni ne pije vodu posto ne mogu koristiti static, posto svaki session mora imati razlicitu instancu. Ono sto sam pokusao je nesto kao:
Code:
public static Global GetGlobalInstance()
{
Global retVal;
if (Session["Global"] != null)
{
retVal = Session["Global"];
}
else
{
retVal = new Global();
Session["Global"] = retVal;
}
return retVal;
}
}
public static Global GetGlobalInstance()
{
Global retVal;
if (Session["Global"] != null)
{
retVal = Session["Global"];
}
else
{
retVal = new Global();
Session["Global"] = retVal;
}
return retVal;
}
}
ali ovo opet nije moguce zato sto se (logicno) ne moze pristupiti Session objektu iz static metode.
Takodje hteo bih da izbegnem instaniciranje neke 'privremene' klase na svakoj stranici.
Every hamster has his day.