CookieParameter クラス
アセンブリ: System.Web (system.web.dll 内)
構文
解説CookieParameter クラスを使用すると、HTTP 要求の一部として渡されたクライアント側の HTTP Cookie の値を、ASP.NET データ ソース コントロールで使用されるパラメータにバインドできます。
CookieParameter クラスには、Parameter クラスから継承されたプロパティに加え、バインド先の HttpCookie オブジェクトの名前を識別する CookieName プロパティが用意されています。CookieParameter クラスは、Evaluate メソッドが呼び出されるたびに、名前付き Cookie にバインドしようとします。
重要 : |
|---|
| CookieParameter オブジェクトが指定されていても、HTTP 要求と共に対応する Cookie が渡されないと、データをパラメータにバインドするコントロールは例外をスローします。同様に、Cookie として null 参照 (Visual Basic では Nothing) が渡された場合、データは表示されないことがあります。このような状況を防ぐには、必要に応じて DefaultValue プロパティを設定します。 |
使用例SqlDataSource コントロールと、HTTP Cookie にバインドされた CookieParameter オブジェクトを使用して、Northwind Traders データベースのデータを GridView コントロールに表示する方法を次のコード例に示します。
<%@Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <SCRIPT runat="server"> Sub Page_Load(sender As Object, e As EventArgs) ' These cookies might be added by a login form. ' They are added here for simplicity. If (Not IsPostBack) Then Dim cookie As HttpCookie cookie = New HttpCookie("lname" ,"davolio") Response.Cookies.Add(cookie) cookie = New HttpCookie("loginname" ,"ndavolio") Response.Cookies.Add(cookie) cookie = New HttpCookie("lastvisit", DateTime.Now.ToString()) Response.Cookies.Add(cookie) End If End Sub ' Page_Load </SCRIPT> <HTML> <BODY> <FORM runat="server"> <asp:SqlDataSource id="SqlDataSource1" runat="server" DataSourceMode="DataSet" ConnectionString="<%$ ConnectionStrings:MyNorthwind%>" SelectCommand = "SELECT OrderID,CustomerID,OrderDate,RequiredDate,ShippedDate FROM Orders WHERE EmployeeID = (SELECT EmployeeID FROM Employees WHERE LastName = @lastname)"> <SelectParameters> <asp:CookieParameter Name="lastname" CookieName="lname" /> </SelectParameters> </asp:SqlDataSource> <asp:GridView id="GridView1" runat="server" AllowSorting="True" DataSourceID="SqlDataSource1"> </asp:GridView> </FORM> </BODY> </HTML>
<%@Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <SCRIPT runat="server"> void Page_Load(Object sender, EventArgs e){ // These cookies might be added by a login form. // They are added here for simplicity. if (!IsPostBack) { Response.Cookies.Add(new HttpCookie("lname", "davolio")); Response.Cookies.Add(new HttpCookie("loginname" ,"ndavolio")); Response.Cookies.Add(new HttpCookie("lastvisit", DateTime.Now.ToString())); } } </SCRIPT> <HTML> <BODY> <FORM runat="server"> <asp:SqlDataSource id="SqlDataSource1" runat="server" DataSourceMode="DataSet" ConnectionString="<%$ ConnectionStrings:MyNorthwind%>" SelectCommand = "SELECT OrderID,CustomerID,OrderDate,RequiredDate,ShippedDate FROM Orders WHERE EmployeeID = (SELECT EmployeeID FROM Employees WHERE LastName = @lastname)"> <SelectParameters> <asp:CookieParameter Name="lastname" CookieName="lname" /> </SelectParameters> </asp:SqlDataSource> <asp:GridView id="GridView1" runat="server" AllowSorting="True" DataSourceID="SqlDataSource1"> </asp:GridView> </FORM> </BODY> </HTML>
<%@Page Language="VJ#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <SCRIPT runat="server"> void Page_Load(Object sender, System.EventArgs e) { // These cookies might be added by a login form. // They are added here for simplicity. if (!get_IsPostBack()) { get_Response().get_Cookies().Add(new HttpCookie( "lname", "davolio")); get_Response().get_Cookies().Add(new HttpCookie( "loginname", "ndavolio")); get_Response().get_Cookies().Add(new HttpCookie( "lastvisit", System.DateTime.get_Now().ToString())); } }//Page_Load </SCRIPT> <HTML> <BODY> <FORM runat="server"> <asp:SqlDataSource id="SqlDataSource1" runat="server" DataSourceMode="DataSet" ConnectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;" SelectCommand="SELECT OrderID,CustomerID,OrderDate,RequiredDate,ShippedDate FROM Orders WHERE EmployeeID =(SELECT EmployeeID FROM Employees WHERE LastName = @lastname)"> <SelectParameters> <asp:CookieParameter Name="lastname" CookieName="lname" /> </SelectParameters> </asp:SqlDataSource> <asp:GridView id="GridView1" runat="server" AllowSorting="True" DataSourceID="SqlDataSource1"> </asp:GridView> </FORM> </BODY> </HTML>
.NET Framework のセキュリティ
継承階層System.Web.UI.WebControls.Parameter
System.Web.UI.WebControls.CookieParameter
スレッド セーフ
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照CookieParameter メンバ
System.Web.UI.WebControls 名前空間
ControlParameter クラス
FormParameter
ProfileParameter
QueryStringParameter
SessionParameter
CookieParameter コンストラクタ ()
アセンブリ: System.Web (system.web.dll 内)
構文
解説CookieParameter コンストラクタで作成された CookieParameter オブジェクトは、すべてのプロパティに既定値を使用して初期化されます。CookieName プロパティは String.Empty に初期化されます。また、Name プロパティは String.Empty に初期化され、Type プロパティは TypeCode.Object に初期化されます。さらに、Direction プロパティは Input に初期化され、DefaultValue プロパティは null 参照 (Visual Basic では Nothing) に初期化されます。
使用例CookieParameter コンストラクタを使用して CookieParameter オブジェクトを作成し、その Name、Type、および CookieName の各プロパティを設定して、SqlDataSource コントロールの SelectParameters コレクションに追加する方法を次のコード例に示します。
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="cookieparam2vb.aspx.vb" Inherits="cookieparam2vb_aspx" %> <html > <body> <form id="form1" runat="server"> <div> <asp:SqlDataSource id="SqlDataSource1" runat="server" DataSourceMode="DataSet" ConnectionString="<%$ ConnectionStrings:MyNorthwind%>" selectcommand ="SELECT OrderID,CustomerID,OrderDate,RequiredDate,ShippedDate FROM Orders WHERE EmployeeID = (SELECT EmployeeID FROM Employees WHERE LastName = @lastname)"> </asp:SqlDataSource> <asp:GridView id="GridView1" runat="server" AllowSorting="True" DataSourceID="SqlDataSource1"> </asp:GridView> </div> </form> </body> </html>
<%@ Page Language="C#" CodeFile="cookieparam2cs.aspx.cs" Inherits="cookieparam2cs_aspx" %> <html > <body> <form id="form1" runat="server"> <div> <asp:SqlDataSource id="SqlDataSource1" runat="server" DataSourceMode="DataSet" ConnectionString="<%$ ConnectionStrings:MyNorthwind%>" selectcommand ="SELECT OrderID,CustomerID,OrderDate,RequiredDate,ShippedDate FROM Orders WHERE EmployeeID = (SELECT EmployeeID FROM Employees WHERE LastName = @lastname)"> </asp:SqlDataSource> <asp:GridView id="GridView1" runat="server" AllowSorting="True" DataSourceID="SqlDataSource1"> </asp:GridView> </div> </form> </body> </html>
<%@Page Language="VJ#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <SCRIPT runat="server"> void Page_Load(Object sender, System.EventArgs e) { // These cookies might be added by a login form. // They are added here for simplicity. if (!get_IsPostBack()) { get_Response().get_Cookies().Add(new HttpCookie("lname", "davolio")); get_Response().get_Cookies().Add(new HttpCookie( "loginname", "ndavolio")); get_Response().get_Cookies().Add(new HttpCookie( "lastvisit", System.DateTime.get_Now().ToString())); // You can add a CookieParameter to the SqlDataSource control's // SelectParameters collection programmatically. CookieParameter cookieParam = new CookieParameter(); cookieParam.set_Name("lastname"); cookieParam.set_Type(System.TypeCode.String); cookieParam.set_CookieName("lname"); SqlDataSource1.get_SelectParameters().Add(cookieParam); } }//Page_Load </SCRIPT> <HTML> <BODY> <FORM runat="server"> <asp:SqlDataSource id="SqlDataSource1" runat="server" DataSourceMode="DataSet" ConnectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;" SelectCommand="SELECT OrderID,CustomerID,OrderDate,RequiredDate,ShippedDate FROM Orders WHERE EmployeeID = (SELECT EmployeeID FROM Employees WHERE LastName = @lastname)"> </asp:SqlDataSource> <asp:GridView id="GridView1" runat="server" AllowSorting="True" DataSourceID="SqlDataSource1"> </asp:GridView> </FORM> </BODY> </HTML>
次の分離コード モジュールは、前の Web フォーム ページと共に使用されます。
Partial Class cookieparam2vb_aspx Inherits System.Web.UI.Page Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) ' These cookies might be added by a login form. ' They are added here for simplicity. If (Not IsPostBack) Then Dim cookie As HttpCookie cookie = New HttpCookie("lname", "davolio") Response.Cookies.Add(cookie) cookie = New HttpCookie("loginname", "ndavolio") Response.Cookies.Add(cookie) cookie = New HttpCookie("lastvisit", DateTime.Now.ToString()) Response.Cookies.Add(cookie) ' You can add a CookieParameter to the SqlDataSource control's ' SelectParameters collection programmatically. Dim cookieParam As New CookieParameter() cookieParam.Name = "lastname" cookieParam.Type = TypeCode.String cookieParam.CookieName = "lname" SqlDataSource1.SelectParameters.Add(cookieParam) End If End Sub ' Page_Load End Class
public partial class cookieparam2cs_aspx : System.Web.UI.Page { void Page_Load(Object sender, EventArgs e) { // These cookies might be added by a login form. // They are added here for simplicity. if (!IsPostBack) { Response.Cookies.Add(new HttpCookie("lname", "davolio")); Response.Cookies.Add(new HttpCookie("loginname", "ndavolio")); Response.Cookies.Add(new HttpCookie("lastvisit", DateTime.Now.ToString())); // You can add a CookieParameter to the SqlDataSource control's // SelectParameters collection programmatically. CookieParameter cookieParam = new CookieParameter(); cookieParam.Name = "lastname"; cookieParam.Type = TypeCode.String; cookieParam.CookieName = "lname"; SqlDataSource1.SelectParameters.Add(cookieParam); } } }
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照CookieParameter コンストラクタ (CookieParameter)
アセンブリ: System.Web (system.web.dll 内)
構文
解説CookieParameter コンストラクタは、CookieParameter インスタンスのクローンを作成するための protected コピー コンストラクタです。CookieParameter オブジェクトのプロパティ値 (CookieName、Name、Type など) が、すべて新しいインスタンスに転送されます。
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照CookieParameter コンストラクタ
オーバーロードの一覧| 名前 | 説明 |
|---|---|
| CookieParameter () | CookieParameter クラスの名前のない新しいインスタンスを初期化します。 |
| CookieParameter (CookieParameter) | original パラメータで指定されたインスタンスの値を使用して、CookieParameter クラスの新しいインスタンスを初期化します。 |
| CookieParameter (String, String) | バインド先の HTTP Cookie を識別する文字列を指定して、CookieParameter クラスの名前付きの新しいインスタンスを初期化します。 |
| CookieParameter (String, TypeCode, String) | バインド先の HTTP Cookie を識別する文字列を指定して、CookieParameter クラスの厳密に型指定された名前付きの新しいインスタンスを初期化します。 |
参照CookieParameter コンストラクタ (String, TypeCode, String)
アセンブリ: System.Web (system.web.dll 内)
構文Dim name As String Dim type As TypeCode Dim cookieName As String Dim instance As New CookieParameter(name, type, cookieName)
解説CookieParameter コンストラクタを使用して作成された CookieParameter オブジェクトは、指定されたパラメータ名、Type、およびパラメータのバインド先の Cookie を識別する文字列を使用して初期化されます。Direction プロパティおよび ConvertEmptyStringToNull プロパティのみ既定値で初期化されます。
使用例CookieParameter コンストラクタを使用して CookieParameter オブジェクトを作成し、SqlDataSource コントロールの SelectParameters コレクションに追加する方法を次のコード例に示します。
' You can programmatically add a CookieParameter to the ' SqlDataSource control's SelectParameters collection. Dim cookieParam As New CookieParameter("lastname" ,TypeCode.String,"lname") SqlDataSource1.SelectParameters.Add(cookieParam)
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照CookieParameter コンストラクタ (String, String)
アセンブリ: System.Web (system.web.dll 内)
構文
解説CookieParameter コンストラクタを使用して作成された CookieParameter オブジェクトは、指定されたパラメータ名、およびパラメータのバインド先の Cookie を識別する文字列を使用して初期化されます。Type や Direction などのその他のプロパティは既定値を使用して初期化されます。
使用例CookieParameter コンストラクタを使用して CookieParameter オブジェクトを作成し、SqlDataSource コントロールの SelectParameters コレクションに追加する方法を次のコード例に示します。
' You can programmatically add a CookieParameter to the ' SqlDataSource control's SelectParameters collection. Dim cookieParam As New CookieParameter("lastname" ,"lname") SqlDataSource1.SelectParameters.Add(cookieParam)
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照CookieParameter プロパティ
パブリック プロパティ| 名前 | 説明 | |
|---|---|---|
| ConvertEmptyStringToNull | Parameter オブジェクトのバインド先の値が String.Empty の場合に、その値を null 参照 (Visual Basic では Nothing) に変換する必要があるかどうかを示す値を取得または設定します。 ( Parameter から継承されます。) |
| CookieName | パラメータのバインド先の HTTP Cookie の名前を取得または設定します。 |
| DefaultValue | パラメータの既定値を指定します。Evaluate メソッドの呼び出し時に、パラメータはこの値にバインドされ、初期化前の状態に戻されます。 ( Parameter から継承されます。) |
| Direction | Parameter オブジェクトを使用して値をコントロールにバインドするかどうか、またはそのコントロールを使用して値を変更できるかどうかを示します。 ( Parameter から継承されます。) |
| Name | パラメータの名前を取得または設定します。 ( Parameter から継承されます。) |
| Size | パラメータのサイズを取得または設定します。 ( Parameter から継承されます。) |
| Type | パラメータの型を取得または設定します。 ( Parameter から継承されます。) |
プロテクト プロパティ| 名前 | 説明 | |
|---|---|---|
| IsTrackingViewState | Parameter オブジェクトがビューステートへの変更を保存しているかどうかを示す値を取得します。 ( Parameter から継承されます。) |
| ViewState | 同一のページに対する複数の要求にわたって、Parameter オブジェクトのビューステートを保存し、復元できるようにする状態情報のディクショナリを取得します。 ( Parameter から継承されます。) |
参照関連項目
CookieParameter クラスSystem.Web.UI.WebControls 名前空間
ControlParameter クラス
FormParameter
ProfileParameter
QueryStringParameter
SessionParameter
CookieParameter メソッド
パブリック メソッド| 名前 | 説明 | |
|---|---|---|
| Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
| GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
| GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
| ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
| ToString | このインスタンスの値を、それと等価の文字列形式に変換します。 ( Parameter から継承されます。) |
プロテクト メソッド| 名前 | 説明 | |
|---|---|---|
| Clone | オーバーライドされます。 現在の CookieParameter インスタンスの複製を返します。 |
| Evaluate | オーバーライドされます。 CookieParameter オブジェクトの値を更新して返します。 |
| Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
| LoadViewState | データ ソース ビューの、以前保存したビューステートを復元します。 ( Parameter から継承されます。) |
| MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |
| OnParameterChanged | Parameter オブジェクトを格納する ParameterCollection コレクションの OnParametersChanged メソッドを呼び出します。 ( Parameter から継承されます。) |
| SaveViewState | ページがサーバーにポストバックされた時間以降に発生した、Parameter オブジェクトのビューステートへの変更を保存します。 ( Parameter から継承されます。) |
| SetDirty | Parameter オブジェクトの状態がビューステートで記録されるように、このオブジェクトをマークします。 ( Parameter から継承されます。) |
| TrackViewState | Parameter オブジェクトがビューステートの変更を追跡するようにします。それにより、変更をコントロールの ViewState オブジェクトに格納して、同じページに対する複数の要求にわたって永続化できます。 ( Parameter から継承されます。) |
参照関連項目
CookieParameter クラスSystem.Web.UI.WebControls 名前空間
ControlParameter クラス
FormParameter
ProfileParameter
QueryStringParameter
SessionParameter
CookieParameter メンバ
クライアント側の HTTP Cookie の値をパラメータ オブジェクトにバインドします。パラメータ クエリまたはコマンドでパラメータを使用すると、データを選択、フィルタ処理、または更新できます。
CookieParameter データ型で公開されるメンバを以下の表に示します。
パブリック コンストラクタ
プロテクト コンストラクタ
パブリック プロパティ| 名前 | 説明 | |
|---|---|---|
| ConvertEmptyStringToNull | Parameter オブジェクトのバインド先の値が String.Empty の場合に、その値を null 参照 (Visual Basic では Nothing) に変換する必要があるかどうかを示す値を取得または設定します。(Parameter から継承されます。) |
| CookieName | パラメータのバインド先の HTTP Cookie の名前を取得または設定します。 |
| DefaultValue | パラメータの既定値を指定します。Evaluate メソッドの呼び出し時に、パラメータはこの値にバインドされ、初期化前の状態に戻されます。(Parameter から継承されます。) |
| Direction | Parameter オブジェクトを使用して値をコントロールにバインドするかどうか、またはそのコントロールを使用して値を変更できるかどうかを示します。(Parameter から継承されます。) |
| Name | パラメータの名前を取得または設定します。(Parameter から継承されます。) |
| Size | パラメータのサイズを取得または設定します。(Parameter から継承されます。) |
| Type | パラメータの型を取得または設定します。(Parameter から継承されます。) |
プロテクト プロパティ| 名前 | 説明 | |
|---|---|---|
| IsTrackingViewState | Parameter オブジェクトがビューステートへの変更を保存しているかどうかを示す値を取得します。(Parameter から継承されます。) |
| ViewState | 同一のページに対する複数の要求にわたって、Parameter オブジェクトのビューステートを保存し、復元できるようにする状態情報のディクショナリを取得します。(Parameter から継承されます。) |
パブリック メソッド| 名前 | 説明 | |
|---|---|---|
| Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
| GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
| GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
| ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
| ToString | このインスタンスの値を、それと等価の文字列形式に変換します。 (Parameter から継承されます。) |
プロテクト メソッド| 名前 | 説明 | |
|---|---|---|
| Clone | オーバーライドされます。 現在の CookieParameter インスタンスの複製を返します。 |
| Evaluate | オーバーライドされます。 CookieParameter オブジェクトの値を更新して返します。 |
| Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
| LoadViewState | データ ソース ビューの、以前保存したビューステートを復元します。 (Parameter から継承されます。) |
| MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |
| OnParameterChanged | Parameter オブジェクトを格納する ParameterCollection コレクションの OnParametersChanged メソッドを呼び出します。 (Parameter から継承されます。) |
| SaveViewState | ページがサーバーにポストバックされた時間以降に発生した、Parameter オブジェクトのビューステートへの変更を保存します。 (Parameter から継承されます。) |
| SetDirty | Parameter オブジェクトの状態がビューステートで記録されるように、このオブジェクトをマークします。 (Parameter から継承されます。) |
| TrackViewState | Parameter オブジェクトがビューステートの変更を追跡するようにします。それにより、変更をコントロールの ViewState オブジェクトに格納して、同じページに対する複数の要求にわたって永続化できます。 (Parameter から継承されます。) |
参照関連項目
CookieParameter クラスSystem.Web.UI.WebControls 名前空間
ControlParameter クラス
FormParameter
ProfileParameter
QueryStringParameter
SessionParameter
- CookieParameterのページへのリンク
重要 :