DynamicQueryStringParameter Klas

Definitie

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
DynamicQueryStringParameter
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 null als dit het geval is Empty.

(Overgenomen van Parameter)
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)

Van toepassing op

Zie ook