DynamicQueryStringParameter Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Automatycznie generuje kolekcję parametrów używanych do tworzenia Where
klauzuli kontroli źródła danych przez pobieranie wartości ciągu zapytania.
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
- Dziedziczenie
- Implementuje
Przykłady
W poniższym przykładzie pokazano, jak używać obiektu jako filtru DynamicQueryStringParameter podczas wyświetlania danych w kontrolce GridView . Kontrolka GridView zawiera TemplateField obiekt, który tworzy link, który ustawia wartość ciągu zapytania przy użyciu wartości klucza obcego.
<%@ 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>
Uwagi
Klasa DynamicQueryStringParameter jest używana przez strony korzystające z funkcji ASP.NET dynamicznych danych. Klasa DynamicQueryStringParameter wygeneruje kolekcję Parameter obiektów dla kluczy podstawowych, kluczy obcych i kolumn logicznych tabeli przez pobieranie wartości ciągu zapytania.
W przypadku kluczy podstawowych można po prostu dodać DynamicQueryStringParameter obiekt bez podawania innych parametrów. Dane dynamiczne wygenerują parametry klucza podstawowego lub kluczy. W przypadku kluczy obcych lub kolumn logicznych należy ustawić Name właściwość na nazwę kolumny, którą chcesz filtrować.
Aby użyć DynamicQueryStringParameter klasy, musisz dodać kontrolkę do strony i musisz zarejestrować kontrolkę DynamicDataManager powiązaną z danymi za pomocą kontrolki DynamicDataManagerDynamicDataManager.RegisterControl przy użyciu metody .
Zobacz przykład kodu w czasie wykonywania tej funkcji: Uruchom.
Konstruktory
DynamicQueryStringParameter() |
Inicjuje nowe wystąpienie klasy DynamicQueryStringParameter. |
Właściwości
ConvertEmptyStringToNull |
Pobiera lub ustawia wartość wskazującą, Parameter czy wartość, którą obiekt jest powiązany, powinna zostać przekonwertowana na |
DbType |
Pobiera lub ustawia typ bazy danych parametru. (Odziedziczone po Parameter) |
DefaultValue |
Określa wartość domyślną parametru, jeśli wartość parametru jest powiązana z niezainicjowaną, gdy Evaluate(HttpContext, Control) metoda jest wywoływana. (Odziedziczone po Parameter) |
Direction |
Wskazuje, czy Parameter obiekt jest używany do powiązania wartości z kontrolką, czy kontrolki można użyć do zmiany wartości. (Odziedziczone po Parameter) |
IsTrackingViewState |
Pobiera wartość wskazującą, czy Parameter obiekt zapisuje zmiany w stanie widoku. (Odziedziczone po Parameter) |
Name |
Pobiera lub ustawia nazwę parametru. (Odziedziczone po Parameter) |
Size |
Pobiera lub ustawia rozmiar parametru. (Odziedziczone po Parameter) |
Type |
Pobiera lub ustawia typ parametru. (Odziedziczone po Parameter) |
ViewState |
Pobiera słownik informacji o stanie, który umożliwia zapisanie i przywrócenie stanu Parameter widoku obiektu na wielu żądaniach dla tej samej strony. (Odziedziczone po Parameter) |
Metody
Clone() |
Zwraca duplikat bieżącego Parameter wystąpienia. (Odziedziczone po Parameter) |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
Evaluate(HttpContext, Control) |
InvalidOperationException Zgłasza wyjątek we wszystkich przypadkach. |
GetDatabaseType() |
DbType Pobiera wartość równoważną typowi CLR bieżącego Parameter wystąpienia. (Odziedziczone po Parameter) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
GetWhereParameters(IDynamicDataSource) |
Zwraca kolekcję Parameter obiektów, które są automatycznie generowane dla kolumn tabeli, pobierając wartości ciągu zapytania. |
LoadViewState(Object) |
Przywraca wcześniej zapisany stan widoku źródła danych. (Odziedziczone po Parameter) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
OnParameterChanged() |
Wywołuje metodę OnParametersChanged(EventArgs) kolekcji ParameterCollection zawierającej Parameter obiekt. (Odziedziczone po Parameter) |
SaveViewState() |
Zapisuje zmiany w Parameter stanie widoku obiektu od czasu opublikowania strony z powrotem na serwerze. (Odziedziczone po Parameter) |
SetDirty() |
Oznacza obiekt tak Parameter , aby jego stan był rejestrowany w stanie widoku. (Odziedziczone po Parameter) |
ToString() |
Konwertuje wartość tego wystąpienia na jego równoważną reprezentację w postaci ciągu. (Odziedziczone po Parameter) |
TrackViewState() |
Parameter Powoduje, że obiekt śledzi zmiany w stanie widoku, dzięki czemu można je przechowywać w obiekcie kontrolki ViewState i utrwalać w żądaniach dla tej samej strony. (Odziedziczone po Parameter) |
Jawne implementacje interfejsu
ICloneable.Clone() |
Zwraca duplikat bieżącego Parameter wystąpienia. (Odziedziczone po Parameter) |
IStateManager.IsTrackingViewState |
Pobiera wartość wskazującą, czy Parameter obiekt zapisuje zmiany w stanie widoku. (Odziedziczone po Parameter) |
IStateManager.LoadViewState(Object) |
Przywraca wcześniej zapisany stan widoku źródła danych. (Odziedziczone po Parameter) |
IStateManager.SaveViewState() |
Zapisuje zmiany w Parameter stanie widoku obiektu od czasu opublikowania strony z powrotem na serwerze. (Odziedziczone po Parameter) |
IStateManager.TrackViewState() |
Parameter Powoduje, że obiekt śledzi zmiany w stanie widoku, dzięki czemu można je przechowywać w obiekcie kontrolki ViewState i utrwalać w żądaniach dla tej samej strony. (Odziedziczone po Parameter) |