おのれ鍋奉行が!
特定のページの中でのみ、参照可能な変数を扱う
最終更新:
lmes2
-
view
特定のページの中でのみ、参照可能な変数を扱う
概要
HttpContext.Current.Itemsの話。
①ViewStateと違って、page派生クラス以外からでも参照しやすい。
②Sessionと違って、複数ページ間で値の保持はできない。
②Sessionと違って、複数ページ間で値の保持はできない。
前提条件
手順
作業の手順
default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>無題のページ</title>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>
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)
{
HttpContext.Current.Items["aaa"] = "aaa";
String str_hoge = "";
Class1 cls = new Class1(ref str_hoge);
Response.Write(str_hoge);
}
}
class1.cs
using System;
using System.Web;
/// <summary>
/// HttpContext.Current.Items参照用クラス
/// </summary>
public class Class1
{
public Class1( ref String str_buff)
{
try
{
str_buff = HttpContext.Current.Items["aaa"].ToString();
}
catch
{
str_buff = "";
}
}
}