Cette page vous a-t-elle été utile ?
Votre avis sur ce contenu est important. N'hésitez pas à nous faire part de vos commentaires.
Vous avez d'autres commentaires ?
1500 caractères restants
Exporter (0) Imprimer
Développer tout

CookieParameter, classe

Remarque : cette classe est nouvelle dans le .NET Framework version 2.0.

Lie la valeur d'un cookie HTTP côté client à un objet paramètre. Le paramètre peut être utilisé dans une requête ou une commande paramétrée pour sélectionner, filtrer ou mettre à jour des données.

Espace de noms : System.Web.UI.WebControls
Assembly : System.Web (dans system.web.dll)

public class CookieParameter : Parameter
public class CookieParameter extends Parameter
public class CookieParameter extends Parameter

Vous pouvez utiliser la classe CookieParameter pour lier la valeur d'un cookie HTTP côté client passée dans le cadre d'une demande HTTP à un paramètre utilisé par les contrôles de source de données ASP.NET.

La classe CookieParameter fournit la propriété CookieName qui identifie le nom de l'objet HttpCookie à lier, outre ceux hérités de la classe Parameter. La classe CookieParameter tente de lier le cookie nommé à chaque appel de la méthode Evaluate.

RemarqueImportant :

Les contrôles permettant de lier des données au paramètre peuvent lever une exception si un objet CookieParameter est spécifié mais qu'aucun cookie correspondant n'est passé avec la demande HTTP. De la même façon, ils sont susceptibles de n'afficher aucune donnée si le cookie est passé avec référence Null (Nothing en Visual Basic). Définissez la propriété DefaultValue afin d'éviter ce type de situation lorsque cela est approprié.

L'exemple de code suivant illustre comment utiliser un contrôle SqlDataSource et un objet CookieParameter liés à un cookie HTTP pour afficher les données de la base de données Northwind Traders dans un contrôle 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>
  <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>

  • AspNetHostingPermission  pour opérer dans un environnement hébergé. Valeur de demande : LinkDemand ; valeur d'autorisation : Minimal
  • AspNetHostingPermission  pour opérer dans un environnement hébergé. Valeur de demande : InheritanceDemand ; valeur d'autorisation : Minimal

System.Object
   System.Web.UI.WebControls.Parameter
    System.Web.UI.WebControls.CookieParameter

Les membres statiques publics (Shared en Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft