Exporter (0) Imprimer
Développer tout

DataPager.QueryStringField, propriété

Mise à jour : novembre 2007

Obtient ou définit le nom du champ de chaîne de requête.

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

public string QueryStringField { get; set; }
/** @property */
public String get_QueryStringField()
/** @property */
public  void set_QueryStringField(String value)

public function get QueryStringField () : String
public function set QueryStringField (value : String)
<asp:DataPager QueryStringField="String" />

Valeur de propriété

Type : System.String

Nom du champ de chaîne de requête. La valeur par défaut est une chaîne vide, ce qui indique que le contrôle DataPager utilisera une commande HTTP POST pour parcourir les pages.

Utilisez la propriété QueryStringField pour spécifier que le contrôle DataPager utilise une commande HTTP GET pour parcourir les pages. Dans les requêtes GET, un champ de chaîne de requête composé d'une paire nom/valeur est ajouté à l'URL de la page. Le nom est défini à l'aide de la propriété QueryStringField. La valeur est le numéro de page correspondant. Si QueryStringField est une chaîne vide ou null, le contrôle utilise une commande HTTP POST pour parcourir les pages.

La définition de cette propriété est utile si vous souhaitez faire indexer toutes les pages de données par un moteur de recherche. Cela se produit parce que le contrôle produit une URL différente pour chaque page de données.

Lorsque vous définissez la propriété QueryStringField, les conditions suivantes peuvent s'appliquer :

  • Vous avez plusieurs contrôles DataPager dans une page et ils référencent le même contrôle lié aux données. Dans ce cas, assurez-vous que la propriété QueryStringField de ces contrôles DataPager possède la même valeur.

  • Vous avez plusieurs contrôles DataPager dans une page et ils référencent différents contrôles liés aux données. Dans ce cas, assurez-vous que la propriété QueryStringField de ces contrôles DataPager possède des valeurs différentes. Si vous affectez la même valeur aux contrôles DataPager, les contrôles liés aux données associés seront paginés en même temps, parce qu'ils utiliseront le même champ de chaîne de requête.

Si vous ne suivez pas les indications précédentes, un problème de pagination imprévu peut se produire. Toutefois, aucune exception ne sera levée par le contrôle.

Si la propriété QueryStringField n'est pas une chaîne vide ou null, la valeur de la propriété ButtonType des objets NumericPagerField ou NextPreviousPagerField est ignorée. Dans ce cas, ces objets utilisent le contrôle HyperLink pour créer leurs boutons de navigation.

L'exemple suivant indique comment définir de façon déclarative la propriété QueryStringField dans un contrôle DataPager afin de parcourir les pages à l'aide d'une chaîne de requête. Cet exemple contient deux contrôles DataPager utilisés pour paginer les données affichées par un même contrôle ListView.

<%@ Page language="C#" %>

<!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 id="Head1" runat="server">
    <title>DataPager Example</title>
    <style type="text/css">
      th
      {
        background-color:#eef4fa;
        border-top:solid 1px #9dbbcc;
        border-bottom:solid 1px #9dbbcc;
      }
    </style>
</head>
<body>
    <form id="form1" runat="server">

      <h3>DataPager QueryStringField Example</h3>

      <asp:DataPager runat="server" ID="DataPager1"
        PagedControlID="CountriesListView" 
        QueryStringField="pageNumber">
        <Fields>
          <asp:NumericPagerField />
        </Fields>
      </asp:DataPager>
      <br /><br />

      <asp:ListView ID="CountriesListView" 
        DataSourceID="CountryDataSource"
        runat="server" >
        <LayoutTemplate>
          <table cellpadding="4" width="500" runat="server" id="tblCountries">
            <tr runat="server">
              <th runat="server">Code</th>
              <th runat="server">Name</th>
            </tr>
            <tr runat="server" id="itemPlaceholder" />
          </table>
        </LayoutTemplate>
        <ItemTemplate>
          <tr>
            <td>
              <asp:Label ID="CountryCodeLabel" runat="server" 
                Text='<%# Eval("CountryRegionCode")%>' />
            </td>          
            <td>
              <asp:Label ID="NameLabel" runat="server" 
                Text='<%# Eval("Name")%>' />
            </td>
          </tr>
        </ItemTemplate>
      </asp:ListView>
      <br />

      <!-- The second DataPager control. -->
      <asp:DataPager runat="server" ID="DataPager2"
        PagedControlID="CountriesListView" 
        QueryStringField="pageNumber">
        <Fields>
          <asp:NumericPagerField />
        </Fields>
      </asp:DataPager>

      <!-- This example uses Microsoft SQL Server and connects      -->
      <!-- to the AdventureWorks sample database. Use an ASP.NET    -->
      <!-- expression to retrieve the connection string value       -->
      <!-- from the Web.config file.                                -->
      <asp:SqlDataSource ID="CountryDataSource" runat="server" 
        ConnectionString="<%$ ConnectionStrings:AdventureWorks_DataConnectionString %>"
        SelectCommand="SELECT [CountryRegionCode], [Name]
          FROM [Person].[CountryRegion]">
      </asp:SqlDataSource>

    </form>
  </body>
</html>


Windows Vista, Windows XP SP2, Windows Server 2003

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.5

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft