DynamicQueryStringParameter Klass

Definition

Genererar automatiskt en samling parametrar som används för att skapa Where -satsen för datakällans kontroll genom att hämta frågesträngsvärden.

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
Arv
DynamicQueryStringParameter
Implementeringar

Exempel

I följande exempel visas hur du använder objektet DynamicQueryStringParameter som filter när du visar data i en GridView kontroll. Kontrollen GridView innehåller ett TemplateField objekt som skapar en länk som anger frågesträngvärdet med hjälp av värdet för sekundärnyckeln.

<%@ 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>

Kommentarer

Klassen DynamicQueryStringParameter används av sidor som använder ASP.NET dynamiska datafunktioner. Klassen DynamicQueryStringParameter genererar en samling Parameter objekt för de primära nycklarna, sekundärnycklarna och booleska kolumnerna i en tabell genom att hämta frågesträngsvärden.

För primära nycklar kan du bara lägga till ett DynamicQueryStringParameter objekt utan att ange några andra parametrar. Dynamiska data genererar parametrarna för primärnyckeln eller nycklarna. För sekundärnycklar eller booleska kolumner måste du ange Name egenskapen till namnet på den kolumn som du vill filtrera.

För att kunna använda DynamicQueryStringParameter klassen måste du lägga till en DynamicDataManager kontroll på sidan och du måste registrera den databundna kontrollen med DynamicDataManager kontrollen med hjälp DynamicDataManager.RegisterControl av -metoden.

Konstruktorer

Name Description
DynamicQueryStringParameter()

Initierar en ny instans av DynamicQueryStringParameter klassen.

Egenskaper

Name Description
ConvertEmptyStringToNull

Hämtar eller anger ett värde som anger om värdet som objektet är bundet Parameter till ska konverteras till null om det är Empty.

(Ärvd från Parameter)
DbType

Hämtar eller anger parameterns databastyp.

(Ärvd från Parameter)
DefaultValue

Anger ett standardvärde för parametern om värdet som parametern är bunden till är onitialiserat när Evaluate(HttpContext, Control) metoden anropas.

(Ärvd från Parameter)
Direction

Anger om objektet Parameter används för att binda ett värde till en kontroll eller om kontrollen kan användas för att ändra värdet.

(Ärvd från Parameter)
IsTrackingViewState

Hämtar ett värde som anger om Parameter objektet sparar ändringar i visningstillståndet.

(Ärvd från Parameter)
Name

Hämtar eller anger namnet på parametern.

(Ärvd från Parameter)
Size

Hämtar eller anger parameterns storlek.

(Ärvd från Parameter)
Type

Hämtar eller anger parametertypen.

(Ärvd från Parameter)
ViewState

Hämtar en ordlista med tillståndsinformation som gör att du kan spara och återställa visningstillståndet för ett Parameter objekt över flera begäranden för samma sida.

(Ärvd från Parameter)

Metoder

Name Description
Clone()

Returnerar en dubblett av den aktuella Parameter instansen.

(Ärvd från Parameter)
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
Evaluate(HttpContext, Control)

Utlöser ett InvalidOperationException undantag i alla fall.

GetDatabaseType()

Hämtar värdet DbType som motsvarar CLR-typen för den aktuella Parameter instansen.

(Ärvd från Parameter)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
GetWhereParameters(IDynamicDataSource)

Returnerar en samling Parameter objekt som genereras automatiskt för kolumnerna i en tabell genom att hämta frågesträngsvärden.

LoadViewState(Object)

Återställer datakällans tidigare sparade vytillstånd.

(Ärvd från Parameter)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
OnParameterChanged()

Anropar metoden för OnParametersChanged(EventArgs) samlingen ParameterCollection som innehåller Parameter objektet.

(Ärvd från Parameter)
SaveViewState()

Sparar ändringarna i Parameter objektets visningstillstånd sedan den tid då sidan publicerades tillbaka till servern.

(Ärvd från Parameter)
SetDirty()

Parameter Markerar objektet så att dess tillstånd registreras i visningstillstånd.

(Ärvd från Parameter)
ToString()

Konverterar värdet för den här instansen till motsvarande strängrepresentation.

(Ärvd från Parameter)
TrackViewState()

Parameter Gör att objektet spårar ändringar i dess visningstillstånd så att de kan lagras i kontrollens ViewState objekt och sparas mellan begäranden för samma sida.

(Ärvd från Parameter)

Explicita gränssnittsimplementeringar

Name Description
ICloneable.Clone()

Returnerar en dubblett av den aktuella Parameter instansen.

(Ärvd från Parameter)
IStateManager.IsTrackingViewState

Hämtar ett värde som anger om Parameter objektet sparar ändringar i visningstillståndet.

(Ärvd från Parameter)
IStateManager.LoadViewState(Object)

Återställer datakällans tidigare sparade vytillstånd.

(Ärvd från Parameter)
IStateManager.SaveViewState()

Sparar ändringarna i Parameter objektets visningstillstånd sedan den tid då sidan publicerades tillbaka till servern.

(Ärvd från Parameter)
IStateManager.TrackViewState()

Parameter Gör att objektet spårar ändringar i dess visningstillstånd så att de kan lagras i kontrollens ViewState objekt och sparas mellan begäranden för samma sida.

(Ärvd från Parameter)

Gäller för

Se även