DynamicQueryStringParameter Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt automatisch een verzameling parameters gegenereerd die wordt gebruikt om de Where component voor het gegevensbronbeheer te maken door queryreekswaarden op te halen.
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
- Overname
- Implementeringen
Voorbeelden
In het volgende voorbeeld ziet u hoe u het DynamicQueryStringParameter object gebruikt als filter bij het weergeven van gegevens in een GridView besturingselement. Het GridView besturingselement bevat een TemplateField object waarmee een koppeling wordt gemaakt waarmee de querytekenreekswaarde wordt ingesteld met behulp van de refererende-sleutelwaarde.
<%@ 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>
Opmerkingen
De klasse DynamicQueryStringParameter wordt gebruikt door pagina's die gebruikmaken van ASP.NET functies voor dynamische gegevens. De DynamicQueryStringParameter klasse genereert een verzameling Parameter objecten voor de primaire sleutels, refererende sleutels en Booleaanse kolommen van een tabel door queryreekswaarden op te halen.
Voor primaire sleutels kunt u gewoon een DynamicQueryStringParameter object toevoegen zonder andere parameters op te leveren. Met dynamische gegevens worden de parameters voor de primaire sleutel of sleutels gegenereerd. Voor refererende sleutels of Booleaanse kolommen moet u de Name eigenschap instellen op de naam van de kolom die u wilt filteren.
Als u de DynamicQueryStringParameter klasse wilt gebruiken, moet u een DynamicDataManager besturingselement toevoegen aan de pagina en moet u het gegevensgebonden besturingselement registreren bij het DynamicDataManager besturingselement met behulp van de DynamicDataManager.RegisterControl methode.
Constructors
| Name | Description |
|---|---|
| DynamicQueryStringParameter() |
Initialiseert een nieuw exemplaar van de DynamicQueryStringParameter klasse. |
Eigenschappen
| Name | Description |
|---|---|
| ConvertEmptyStringToNull |
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de waarde waarnaar het Parameter object is gebonden, moet worden geconverteerd |
| DbType |
Hiermee haalt u het databasetype van de parameter op of stelt u deze in. (Overgenomen van Parameter) |
| DefaultValue |
Hiermee geeft u een standaardwaarde voor de parameter op, moet de waarde die de parameter moet worden niet geïnitialiseerd wanneer de Evaluate(HttpContext, Control) methode wordt aangeroepen. (Overgenomen van Parameter) |
| Direction |
Hiermee wordt aangegeven of het Parameter object wordt gebruikt om een waarde aan een besturingselement te binden, of het besturingselement kan worden gebruikt om de waarde te wijzigen. (Overgenomen van Parameter) |
| IsTrackingViewState |
Hiermee wordt een waarde opgehaald die aangeeft of het Parameter object wijzigingen opslaat in de weergavestatus. (Overgenomen van Parameter) |
| Name |
Hiermee haalt u de naam van de parameter op of stelt u deze in. (Overgenomen van Parameter) |
| Size |
Hiermee haalt u de grootte van de parameter op of stelt u deze in. (Overgenomen van Parameter) |
| Type |
Hiermee haalt u het type van de parameter op of stelt u deze in. (Overgenomen van Parameter) |
| ViewState |
Hiermee haalt u een woordenlijst met statusgegevens op waarmee u de weergavestatus van een Parameter object kunt opslaan en herstellen voor meerdere aanvragen voor dezelfde pagina. (Overgenomen van Parameter) |
Methoden
| Name | Description |
|---|---|
| Clone() |
Retourneert een duplicaat van het huidige Parameter exemplaar. (Overgenomen van Parameter) |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| Evaluate(HttpContext, Control) |
Genereert in alle gevallen een InvalidOperationException uitzondering. |
| GetDatabaseType() |
Hiermee haalt u de DbType waarde op die gelijk is aan het CLR-type van het huidige Parameter exemplaar. (Overgenomen van Parameter) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| GetWhereParameters(IDynamicDataSource) |
Retourneert een verzameling Parameter objecten die automatisch worden gegenereerd voor de kolommen van een tabel door queryreekswaarden op te halen. |
| LoadViewState(Object) |
Hiermee herstelt u de eerder opgeslagen weergavestatus van de gegevensbronweergave. (Overgenomen van Parameter) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| OnParameterChanged() |
Roept de OnParametersChanged(EventArgs) methode aan van de ParameterCollection verzameling die het Parameter object bevat. (Overgenomen van Parameter) |
| SaveViewState() |
Hiermee worden de wijzigingen opgeslagen in de weergavestatus van het Parameter object sinds het moment dat de pagina op de server is geplaatst. (Overgenomen van Parameter) |
| SetDirty() |
Hiermee wordt het Parameter object gemarkeerd, zodat de status ervan wordt vastgelegd in de weergavestatus. (Overgenomen van Parameter) |
| ToString() |
Converteert de waarde van dit exemplaar naar de equivalente tekenreeksweergave. (Overgenomen van Parameter) |
| TrackViewState() |
Hiermee zorgt u ervoor dat het Parameter object wijzigingen in de weergavestatus bijhoudt, zodat deze kunnen worden opgeslagen in het object van ViewState het besturingselement en kunnen worden bewaard in aanvragen voor dezelfde pagina. (Overgenomen van Parameter) |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| ICloneable.Clone() |
Retourneert een duplicaat van het huidige Parameter exemplaar. (Overgenomen van Parameter) |
| IStateManager.IsTrackingViewState |
Hiermee wordt een waarde opgehaald die aangeeft of het Parameter object wijzigingen opslaat in de weergavestatus. (Overgenomen van Parameter) |
| IStateManager.LoadViewState(Object) |
Hiermee herstelt u de eerder opgeslagen weergavestatus van de gegevensbronweergave. (Overgenomen van Parameter) |
| IStateManager.SaveViewState() |
Hiermee worden de wijzigingen opgeslagen in de weergavestatus van het Parameter object sinds het moment dat de pagina op de server is geplaatst. (Overgenomen van Parameter) |
| IStateManager.TrackViewState() |
Hiermee zorgt u ervoor dat het Parameter object wijzigingen in de weergavestatus bijhoudt, zodat deze kunnen worden opgeslagen in het object van ViewState het besturingselement en kunnen worden bewaard in aanvragen voor dezelfde pagina. (Overgenomen van Parameter) |