おのれ鍋奉行が!

Page派生クラス以外から、セッション変数等を扱う方法

最終更新:

lmes2

- view
管理者のみ編集可

Page派生クラス以外から、セッション変数等を扱う方法


概要

Page派生クラス以外から、セッション変数等を扱う方法。
「HttpContext.Current」について。

参照


参考


前提条件


手順

通常、default.aspx.csは、以下のようにPageクラスから派生している。
その為、セッション等々が使用できる。
しかし、class1.cs等のように、外部クラスファイル化してしまうと、セッション等々が使えなくなる。
で、以下のように回避する。

default.aspx.cs
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
 
public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Session["hoge"] = "hoge";
 
        Class1 temp = new Class1();
    }
}
 

class1.cs
using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
 
/// <summary>
/// Class1 の概要の説明です
/// </summary>
public class Class1
{
	public Class1()
	{
        String str_temp = HttpContext.Current.Session["hoge"].ToString();
        HttpContext.Current.Response.Write(str_temp);
    }
}
 

実行すると、Class1のコンストラクタが実行される。

not found (2.jpg)
記事メニュー
目安箱バナー