DynamicQueryStringParameter Osztály

Definíció

Automatikusan létrehoz egy paramétergyűjteményt, amely lekérdezési sztringértékek beolvasásával hozza létre az Where adatforrás-vezérlő záradékát.

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
Öröklődés
DynamicQueryStringParameter
Megvalósítás

Példák

Az alábbi példa bemutatja, hogyan használhatja az DynamicQueryStringParameter objektumot szűrőként, amikor adatokat jelenít meg egy GridView vezérlőben. A GridView vezérlő olyan objektumot TemplateField tartalmaz, amely létrehoz egy hivatkozást, amely a lekérdezési sztring értékét az idegenkulcs-érték használatával állítja be.

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

Megjegyzések

A DynamicQueryStringParameter osztályt olyan lapok használják, amelyek ASP.NET dinamikus adatfunkciókat használnak. Az DynamicQueryStringParameter osztály egy tábla elsődleges kulcsainak, idegen kulcsainak és logikai oszlopainak objektumgyűjteményét Parameter hozza létre lekérdezési sztringértékek beolvasásával.

Az elsődleges kulcsok esetében egyszerűen hozzáadhat egy DynamicQueryStringParameter objektumot anélkül, hogy más paramétereket ad meg. A dinamikus adatok generálják az elsődleges kulcs vagy kulcs paramétereit. Idegen kulcsok vagy logikai oszlopok esetén a tulajdonságot a Name szűrni kívánt oszlop nevére kell állítani.

Az osztály használatához DynamicQueryStringParameter hozzá kell adnia egy vezérlőt DynamicDataManager a laphoz, és a metódus használatával regisztrálnia kell az adatkötött vezérlőt a DynamicDataManagerDynamicDataManager.RegisterControl vezérlővel.

Konstruktorok

Name Description
DynamicQueryStringParameter()

Inicializálja a DynamicQueryStringParameter osztály új példányát.

Tulajdonságok

Name Description
ConvertEmptyStringToNull

Lekéri vagy beállít egy értéket, amely jelzi, hogy az Parameter objektumhoz kötött értéket konvertálni null kell-e, ha igen Empty.

(Öröklődés forrása Parameter)
DbType

Lekéri vagy beállítja a paraméter adatbázistípusát.

(Öröklődés forrása Parameter)
DefaultValue

A paraméter alapértelmezett értékét adja meg, ha a metódus meghívásakor Evaluate(HttpContext, Control) a paraméter nem inicializálódik.

(Öröklődés forrása Parameter)
Direction

Azt jelzi, hogy az Parameter objektum egy vezérlőelemhez köti-e az értéket, vagy a vezérlőelem használható az érték módosítására.

(Öröklődés forrása Parameter)
IsTrackingViewState

Beolvas egy értéket, amely jelzi, hogy az Parameter objektum menti-e a nézetállapot módosításait.

(Öröklődés forrása Parameter)
Name

Lekéri vagy beállítja a paraméter nevét.

(Öröklődés forrása Parameter)
Size

Lekéri vagy beállítja a paraméter méretét.

(Öröklődés forrása Parameter)
Type

Lekéri vagy beállítja a paraméter típusát.

(Öröklődés forrása Parameter)
ViewState

Lekéri az állapotinformációk szótárát, amely lehetővé teszi egy objektum nézetállapotának mentését és visszaállítását Parameter ugyanazon lap több kérésében.

(Öröklődés forrása Parameter)

Metódusok

Name Description
Clone()

Az aktuális Parameter példány duplikátumát adja vissza.

(Öröklődés forrása Parameter)
Equals(Object)

Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal.

(Öröklődés forrása Object)
Evaluate(HttpContext, Control)

Minden esetben kivételt InvalidOperationException jelez.

GetDatabaseType()

Lekéri az DbType aktuális Parameter példány CLR-típusával egyenértékű értéket.

(Öröklődés forrása Parameter)
GetHashCode()

Ez az alapértelmezett kivonatoló függvény.

(Öröklődés forrása Object)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
GetWhereParameters(IDynamicDataSource)

Olyan objektumgyűjteményt Parameter ad vissza, amely a lekérdezési sztringértékek beolvasásával automatikusan létrejön egy tábla oszlopaihoz.

LoadViewState(Object)

Visszaállítja az adatforrásnézet korábban mentett nézetállapotát.

(Öröklődés forrása Parameter)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
OnParameterChanged()

Meghívja OnParametersChanged(EventArgs) az ParameterCollection objektumot tartalmazó gyűjtemény metódusátParameter.

(Öröklődés forrása Parameter)
SaveViewState()

Menti az Parameter objektum nézetállapotának módosításait a lap kiszolgálóra való visszatérése óta.

(Öröklődés forrása Parameter)
SetDirty()

Megjelöli az Parameter objektumot, hogy az állapota megtekintési állapotban legyen rögzítve.

(Öröklődés forrása Parameter)
ToString()

A példány értékét a megfelelő sztring-ábrázolásúvá alakítja.

(Öröklődés forrása Parameter)
TrackViewState()

Ez azt eredményezi, hogy az Parameter objektum nyomon követi a nézetállapot változásait, hogy azok a vezérlő ViewState objektumában tárolhatók legyenek, és ugyanazon lap kérései között megmaradjanak.

(Öröklődés forrása Parameter)

Explicit interfész-implementációk

Name Description
ICloneable.Clone()

Az aktuális Parameter példány duplikátumát adja vissza.

(Öröklődés forrása Parameter)
IStateManager.IsTrackingViewState

Beolvas egy értéket, amely jelzi, hogy az Parameter objektum menti-e a nézetállapot módosításait.

(Öröklődés forrása Parameter)
IStateManager.LoadViewState(Object)

Visszaállítja az adatforrásnézet korábban mentett nézetállapotát.

(Öröklődés forrása Parameter)
IStateManager.SaveViewState()

Menti az Parameter objektum nézetállapotának módosításait a lap kiszolgálóra való visszatérése óta.

(Öröklődés forrása Parameter)
IStateManager.TrackViewState()

Ez azt eredményezi, hogy az Parameter objektum nyomon követi a nézetállapot változásait, hogy azok a vezérlő ViewState objektumában tárolhatók legyenek, és ugyanazon lap kérései között megmaradjanak.

(Öröklődés forrása Parameter)

A következőre érvényes:

Lásd még