Share via


CookieParameter.CookieName プロパティ

定義

パラメーターのバインド先の HTTP クッキーの名前を取得または設定します。

public:
 property System::String ^ CookieName { System::String ^ get(); void set(System::String ^ value); };
public string CookieName { get; set; }
member this.CookieName : string with get, set
Public Property CookieName As String

プロパティ値

String

パラメーターのバインド先のクライアント側の HTTP クッキーを識別する文字列。

次のコード例では、コントロールと CookieParameter HTTP Cookie にバインドされたオブジェクトをSqlDataSource宣言的に使用して、Northwind Traders データベースのデータをコントロールに表示する方法をGridView示します。

<%@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 xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" 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="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 xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" 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>

次のコード例では、プログラムによってオブジェクトをCookieParameter作成し、そのプロパティを設定して、コントロールのSelectParametersコレクションに追加する方法をSqlDataSource示します。

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);
        }
    }
}
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
End Class

注釈

このプロパティは CookieName 、オブジェクトによって HttpCookie 表され、現在 HttpRequest のオブジェクトを介して使用できる HTTP Cookie を識別します。 HTTP Cookie が現在 HttpRequest のオブジェクトで使用できない場合、 Evaluate メソッドはパラメーターをプロパティの DefaultValue 値にバインドします (設定されている場合)。 プロパティが DefaultValue 設定されていない場合、メソッドは Evaluate パラメーターを値にバインドできません。

適用対象