SORU
2 HAZİRAN 2009, Salı


Oturum ve HttpContext arasındaki fark.Mevcut.Oturum

Ne Oturum ve HttpContext arasındaki farktır.Mevcut.Oturum nesnesi?

CEVAP
16 Mayıs 2011, PAZARTESİ


Biraz geç oldu ama ben burada sadece bir şey keşfetti.

@Phillipe Leybaert CSharpAtl her ikisi de yanlıştır. HttpApplication'Session s özellik sergiler özelliği bu farklı davranış HttpContext.Current.Session. Her iki HttpSessionState aynı örneği başvurusu döndürüreğerbir kullanılabilir. HttpSessionState geçerli istek için kullanılabilir örneği yok hiçbir zaman onlar ne onlar farklı.

Tüm HttpHandlers oturum durumu sağlar. Bunu yapmak için, HttpHandlergerekiruygulamak [ya da her ikisini birden?] marker IRequiresSessionState IReadOnlySessionState arabirimleri.

HttpContext.Current.Session sadece eğer oturum varsa orada null döndürür.

HttpApplication'Oturum özelliği hayata geçirilmesi ileti HttpException 13 ** null bir başvuru döndürmek yerine atar.

Oturum uygulayan HttpHandlers bazı örnekler normalde statik kaynaklar, resim ve CSS dosyaları gibi varsayılan işleyicileri vardır. HttpApplication'nın bu gibi durumlarda Session özelliği (global.asax olay işleyicileri gibi) bir HttpException atılan neden olur. herhangi bir referans

Söylemeye gerek yok, beklenmedik HttpException bir FİKRİM ne sağlar?! Eğer onu bekliyorsan değil an.

HttpApplication sınıfı Session özelliği dolayısıyla (Reflektör) uygulanır:

[Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public HttpSessionState Session
{
  get
  {
    HttpSessionState session = null;

    if (this._session != null)
    {
        session = this._session;
    }
    else if (this._context != null)
    {
        session = this._context.Session;
    }

    if (session == null)
    {
        throw new HttpException(SR.GetString("Session_not_available"));
    }

    return session;
  }
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dion Coulls

    Dion Coulls

    16 AĞUSTOS 2006
  • Eric Magidson

    Eric Magidso

    4 Ocak 2009
  • MADFINGER Games a.s.

    MADFINGER Ga

    21 NİSAN 2009