Web サイトでユーザー ログイン用のセッションを作成しています。セッションを初期化してそのメンバーを問題なく使用できますが、それ自体を格納するセッション クラス内のメソッドも必要です。入力パラメーターとして提供HttpSessionState
し、次のようなオブジェクトに格納する必要がありますSession["sessionName"]=this;
。
さらに、セッションを取得したいときは、まだ作成されていないため、静的でなければなりません。次に、プロパティ (ユーザー名と会社 ID) を .xml ファイルから入力して、セッション クラスの新しいインスタンスを返す必要がありますHttpSessionState
。
セッションクラスでこれを行うにはどうすればよいですか? 上記で説明したことは、私の問題に対する特定の解決策を提供する私が行った調査からのものですが、私はセッションの使用に慣れていないため、よくわかりません。ありがとう。
私のセッションクラスのスニペット:
public class MySession : System.Web.UI.Page
{
private MySession()
{
Username = Business.User.labelUsername;
CompanyId = Business.User.labelCompanyId;
}
public static MySession Current
{
get
{
try
{
MySession session = (MySession)HttpContext.Current.Session["sessionName"];
if (session == null)
{
session = new MySession();
HttpContext.Current.Session["sessionName"]=session;
}
return session;
}
catch (NullReferenceException e)
{
Debug.WriteLine("NullReferenceException:");
Debug.WriteLine(e);
}
return null;
}
}
public string Username
{
get; set;
}
public string CompanyId
{
get; set;
}
}