DynamicQueryStringParameter Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Génère automatiquement une collection de paramètres utilisés pour créer la Where clause pour le contrôle de source de données en récupérant les valeurs de chaîne de requête.
public ref class DynamicQueryStringParameter : System::Web::UI::WebControls::Parameter, System::Web::DynamicData::IWhereParametersProvider
public class DynamicQueryStringParameter : System.Web.UI.WebControls.Parameter, System.Web.DynamicData.IWhereParametersProvider
type DynamicQueryStringParameter = class
inherit Parameter
interface IWhereParametersProvider
Public Class DynamicQueryStringParameter
Inherits Parameter
Implements IWhereParametersProvider
- Héritage
- Implémente
Exemples
L’exemple suivant montre comment utiliser l’objet DynamicQueryStringParameter comme filtre lors de l’affichage de données dans un GridView contrôle. Le GridView contrôle contient un TemplateField objet qui crée un lien qui définit la valeur de chaîne de requête à l’aide de la valeur de clé étrangère.
<%@ 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">
protected void Page_Init(object sender, EventArgs e)
{
// Registers the data-bound control with
// the DynamicDataManager control.
DynamicDataManager1.RegisterControl(ProductsGridView);
// Initializes the URL for the View All link
// to the current page.
ViewAllLink.NavigateUrl = Request.Path;
}
protected string GetFilterPath()
{
// Retrieves the current data item.
var productItem = (Product)GetDataItem();
if (productItem.ProductCategory != null)
{
// Creates a URL that has a query string value
// set to the foreign key value.
return Request.Path + "?ProductCategoryID="
+ productItem.ProductCategoryID.ToString();
}
return string.Empty;
}
protected string GetProductCategory()
{
// Returns the value for the Name column
// in the relationship table.
var productItem = (Product)GetDataItem();
if (productItem.ProductCategory != null)
{
return productItem.ProductCategory.Name;
}
return string.Empty;
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>DynamicQueryStringParameter Example</title>
<link href="~/Site.css" rel="stylesheet" type="text/css" />
</head>
<body class="template">
<form id="form1" runat="server">
<div>
<h2>DynamicQueryStringParameter Example</h2>
<asp:DynamicDataManager ID="DynamicDataManager1" runat="server"
AutoLoadForeignKeys="true" />
<asp:GridView ID="ProductsGridView" runat="server"
AutoGenerateColumns="false"
DataSourceID="ProductsDataSource"
AllowPaging="true"
CssClass="gridview">
<Columns>
<asp:DynamicField DataField="Name" />
<asp:DynamicField DataField="ProductNumber" />
<asp:DynamicField DataField="Color" />
<asp:TemplateField HeaderText="Category">
<ItemTemplate>
<a runat="server" href='<%# GetFilterPath() %>'>
<asp:Label runat="server" ID="ProductCategory" Text='<%# GetProductCategory() %>' />
</a>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<br />
<div class="bottomhyperlink">
<asp:HyperLink runat="server" ID="ViewAllLink" Text="View All Records" />
</div>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the AdventureWorksLT sample database. -->
<asp:LinqDataSource ID="ProductsDataSource" runat="server"
TableName="Products"
ContextTypeName="AdventureWorksLTDataContext" >
<WhereParameters>
<asp:DynamicQueryStringParameter Name="ProductCategory" />
</WhereParameters>
</asp:LinqDataSource>
</div>
</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">
Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs)
' Registers the data-bound control with
' the DynamicDataManager control.
DynamicDataManager1.RegisterControl(ProductsGridView)
' Initializes the URL for the View All link
' to the current page.
ViewAllLink.NavigateUrl = Request.Path
End Sub
Protected Function GetFilterPath() As String
' Retrieves the current data item.
Dim productItem = CType(GetDataItem(), Product)
If Not (productItem.ProductCategory Is Nothing) Then
' Creates a URL that has a query string value
' set to the foreign key value.
Return Request.Path + "?ProductCategoryID=" + productItem.ProductCategoryID.ToString()
End If
Return String.Empty
End Function
Protected Function GetProductCategory() As String
' Returns the value for the Name column
' in the relationship table.
Dim productItem = CType(GetDataItem(), Product)
If Not (productItem.ProductCategory Is Nothing) Then
Return productItem.ProductCategory.Name
End If
Return String.Empty
End Function
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>DynamicQueryStringParameter Example</title>
<link href="~/Site.css" rel="stylesheet" type="text/css" />
</head>
<body class="template">
<form id="form1" runat="server">
<div>
<h2>DynamicQueryStringParameter Example</h2>
<asp:DynamicDataManager ID="DynamicDataManager1" runat="server"
AutoLoadForeignKeys="true" />
<asp:GridView ID="ProductsGridView" runat="server"
AutoGenerateColumns="false"
DataSourceID="ProductsDataSource"
AllowPaging="true"
CssClass="gridview">
<Columns>
<asp:DynamicField DataField="Name" />
<asp:DynamicField DataField="ProductNumber" />
<asp:DynamicField DataField="Color" />
<asp:TemplateField HeaderText="Category">
<ItemTemplate>
<a runat="server" href='<%# GetFilterPath() %>'>
<asp:Label runat="server" ID="ProductCategory" Text='<%# GetProductCategory() %>' />
</a>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<br />
<div class="bottomhyperlink">
<asp:HyperLink runat="server" ID="ViewAllLink" Text="View All Records" />
</div>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the AdventureWorksLT sample database. -->
<asp:LinqDataSource ID="ProductsDataSource" runat="server"
TableName="Products"
ContextTypeName="AdventureWorksLTDataContext" >
<WhereParameters>
<asp:DynamicQueryStringParameter Name="ProductCategory" />
</WhereParameters>
</asp:LinqDataSource>
</div>
</form>
</body>
</html>
Remarques
La DynamicQueryStringParameter classe est utilisée par les pages qui utilisent ASP.NET fonctionnalités de données dynamiques. La DynamicQueryStringParameter classe génère une collection d’objets pour les clés primaires, les clés étrangères et les colonnes booléennes d’une table en récupérant les valeurs de Parameter chaîne de requête.
Pour les clés primaires, vous pouvez simplement ajouter un DynamicQueryStringParameter objet sans fournir d’autres paramètres. Les données dynamiques génèrent les paramètres de la clé primaire ou des clés. Pour les clés étrangères ou les colonnes booléennes, vous devez définir la Name propriété sur le nom de la colonne que vous souhaitez filtrer.
Pour utiliser la DynamicQueryStringParameter classe, vous devez ajouter un DynamicDataManager contrôle à la page et vous devez inscrire le contrôle lié aux données auprès du DynamicDataManager contrôle à l’aide de la DynamicDataManager.RegisterControl méthode.
Constructeurs
| Nom | Description |
|---|---|
| DynamicQueryStringParameter() |
Initialise une nouvelle instance de la classe DynamicQueryStringParameter. |
Propriétés
| Nom | Description |
|---|---|
| ConvertEmptyStringToNull |
Obtient ou définit une valeur indiquant si la valeur à laquelle l’objet Parameter est lié doit être convertie |
| DbType |
Obtient ou définit le type de base de données du paramètre. (Hérité de Parameter) |
| DefaultValue |
Spécifie une valeur par défaut pour le paramètre, si la valeur que le paramètre est lié à être non initialisée lorsque la Evaluate(HttpContext, Control) méthode est appelée. (Hérité de Parameter) |
| Direction |
Indique si l’objet Parameter est utilisé pour lier une valeur à un contrôle, ou si le contrôle peut être utilisé pour modifier la valeur. (Hérité de Parameter) |
| IsTrackingViewState |
Obtient une valeur indiquant si l’objet Parameter enregistre les modifications apportées à son état d’affichage. (Hérité de Parameter) |
| Name |
Obtient ou définit le nom du paramètre. (Hérité de Parameter) |
| Size |
Obtient ou définit la taille du paramètre. (Hérité de Parameter) |
| Type |
Obtient ou définit le type du paramètre. (Hérité de Parameter) |
| ViewState |
Obtient un dictionnaire d’informations d’état qui vous permet d’enregistrer et de restaurer l’état d’affichage d’un Parameter objet sur plusieurs requêtes pour la même page. (Hérité de Parameter) |
Méthodes
| Nom | Description |
|---|---|
| Clone() |
Retourne un doublon de l’instance actuelle Parameter . (Hérité de Parameter) |
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| Evaluate(HttpContext, Control) |
Lève une InvalidOperationException exception dans tous les cas. |
| GetDatabaseType() |
Obtient la DbType valeur équivalente au type CLR de l’instance actuelle Parameter . (Hérité de Parameter) |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| GetWhereParameters(IDynamicDataSource) |
Retourne une collection d’objets générés automatiquement pour les colonnes d’une table en récupérant les valeurs de Parameter chaîne de requête. |
| LoadViewState(Object) |
Restaure l’état d’affichage précédemment enregistré de la vue de source de données. (Hérité de Parameter) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| OnParameterChanged() |
Appelle la OnParametersChanged(EventArgs) méthode de la ParameterCollection collection qui contient l’objet Parameter . (Hérité de Parameter) |
| SaveViewState() |
Enregistre les modifications apportées à l’état d’affichage de l’objet Parameter depuis la publication de la page sur le serveur. (Hérité de Parameter) |
| SetDirty() |
Marque l’objet Parameter de sorte que son état soit enregistré dans l’état d’affichage. (Hérité de Parameter) |
| ToString() |
Convertit la valeur de cette instance en sa représentation sous forme de chaîne équivalente. (Hérité de Parameter) |
| TrackViewState() |
Provoque le Parameter suivi des modifications apportées à son état d’affichage afin qu’ils puissent être stockés dans l’objet du ViewState contrôle et conservés dans les requêtes pour la même page. (Hérité de Parameter) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| ICloneable.Clone() |
Retourne un doublon de l’instance actuelle Parameter . (Hérité de Parameter) |
| IStateManager.IsTrackingViewState |
Obtient une valeur indiquant si l’objet Parameter enregistre les modifications apportées à son état d’affichage. (Hérité de Parameter) |
| IStateManager.LoadViewState(Object) |
Restaure l’état d’affichage précédemment enregistré de la vue de source de données. (Hérité de Parameter) |
| IStateManager.SaveViewState() |
Enregistre les modifications apportées à l’état d’affichage de l’objet Parameter depuis la publication de la page sur le serveur. (Hérité de Parameter) |
| IStateManager.TrackViewState() |
Provoque le Parameter suivi des modifications apportées à son état d’affichage afin qu’ils puissent être stockés dans l’objet du ViewState contrôle et conservés dans les requêtes pour la même page. (Hérité de Parameter) |