Nasıl oturum değişkenleri erişmek için ASP.NET herhangi bir sınıftan?
Benim uygulamada App_Code klasöründe sınıf bir dosya oluşturduk. Bir oturum değişkeni var
Session["loginId"]
Bu oturum benim sınıf değişkenleri erişmek istiyorum, ama şu satırı yazıyorum sonra hata veriyor
Session["loginId"]
Herkes ASP.NET 2.0 app_code klasöründe oluşturulan bir sınıf içinde oturum değişkenleri erişmek için nasıl bana söyleyebilir (C#)
CEVAP
(Bütünlüğü için güncelleştirilmiş)
Herhangi bir sınıf (sınıf kitaplığı içinde örneğin) herhangi bir sayfa ya da kontrolü Session["loginId"] kullanarak ve oturum değişkenleri, System.Web.HttpContext.Current.Session["loginId"]. kullanarak erişebilirsiniz
Ama lütfen benim orijinal cevap için okuyun...
Ben her zaman ASP.NET oturum etrafında sarıcı bir sınıf oturum değişkenleri erişimi kolaylaştırmak için kullanın:
public class MySession
{
// private constructor
private MySession()
{
Property1 = "default value";
}
// Gets the current session.
public static MySession Current
{
get
{
MySession session =
(MySession)HttpContext.Current.Session["__MySession__"];
if (session == null)
{
session = new MySession();
HttpContext.Current.Session["__MySession__"] = session;
}
return session;
}
}
// **** add your session properties here, e.g like this:
public string Property1 { get; set; }
public DateTime MyDate { get; set; }
public int LoginId { get; set; }
}
Bu sınıf ASP.NET oturumda kendisi bir kopyasını saklar ve herhangi bir sınıf, e tip-güvenli bir şekilde oturum özellikleri erişim sağlar.g bu gibi:
int loginId = MySession.Current.LoginId;
string property1 = MySession.Current.Property1;
MySession.Current.Property1 = newValue;
DateTime myDate = MySession.Current.MyDate;
MySession.Current.MyDate = DateTime.Now;
Bu yaklaşım birçok avantajı vardır:
- tür çevrim çok kurtarır
- uygulama boyunca sabit kodlanmış oturum anahtarları kullanmak zorunda değilsiniz (örneğin Session [""] uzun
- MySession özelliklerini XML belge açıklamaları ekleyerek oturum öğeler belge
- varsayılan değerler (örneğin boş değil güvence) ile oturum değişkenleri başlatılamıyor

Nasıl Python ortam değişkenleri erişme...
Nasıl C kaynak dosyaları arasında pay ...
Nasıl Android global değişkenleri bild...
Nasıl (sorgu dizesi) Node.js üzerinde ...
Hizmet değişkenleri izlemek için Nasıl...