ASP.NET Session

      2016/12/17

Sessionの使い方を書きます。

Default.aspx
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" />
<asp:Button ID="Button2" runat="server" Text="Button" />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</div>

</form>

Default2.aspx
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default2.aspx.vb" Inherits="Default2" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</div>
</form>
</body>
</html>

Default.vb
Partial Class _Default
Inherits System.Web.UI.Page
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
If TextBox1.Text = "" Then
TextBox1.Text = "文字を入力してください。"
Exit Sub
End If
TextBox1.Text = "ようこそ" & TextBox1.Text & "さん"

End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

Response.Redirect("Default2.aspx")
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
If IsPostBack = False Then
TextBox1.Text = "貴方の名前を教えてください"
Session("deta") = TextBox1.Text
End If
End Sub
End Class

Default2.vb

Partial Class Default2
Inherits System.Web.UI.Page
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
If IsPostBack = False Then
TextBox1.Text = Session("deta")

End If
End Sub
End Class

このプログラムはサンプルなので特に意味はありません。

Sessionを作成します。

Session("セッション名")

Session("deta") = TextBox1.Text

セッション名は被ったらメンドクサイので画面名とデータがわかりやすい名前がいいです。

セッションをTextBox1.Textに代入してます。

TextBox1.Text = Session("deta")

必要があれば型変換してください。

セッションはサーバーに保管されるのであまりサーバに負荷をかけないようにしましょう。

PR



 - ASP.NET

Translate »