static v asp.net

12. prosince 2008 v 12:29
Včera sem rozlousknul jeden bug v jedný naší slavný aplikaci, bylo to způsobený trochu neočekávanym chováním static proměnejchv asp.net.. tedy neočekávanym pro me :). static promeny se sdilej v celym procesu kterej ale vyuziva vic uzivatelu, takze kdyz si udelate tridu pro pristup k db jako singleton s pouzitim static tak to docela blbne - jeden uzivatel dostane zapise do command neco, druhej mu to prepise ap..takže singleton (per request) musi vypadat nejak takhle:


public static connection self
{
get
{
if (!HttpContext.Current.Items.Contains("dbConnection"))
{
HttpContext.Current.Items.Add("dbConnection", new connection());
}

return (connection)HttpContext.Current.Items["dbConnection"];
}
}
 

Buď první, kdo ohodnotí tento článek.

Nový komentář

Přihlásit se
  Ještě nemáte vlastní web? Můžete si jej zdarma založit na Blog.cz.
 

Aktuální články

Reklama