Sdílet prostřednictvím


ParameterCollection Třída

Definice

Představuje kolekci a Parameterodvozených Parameter objektů, které jsou používány ovládacími prvky zdroje dat v pokročilých scénářích datových vazeb.

public ref class ParameterCollection : System::Web::UI::StateManagedCollection
public class ParameterCollection : System.Web.UI.StateManagedCollection
type ParameterCollection = class
    inherit StateManagedCollection
Public Class ParameterCollection
Inherits StateManagedCollection
Dědičnost
ParameterCollection

Příklady

Následující příklad kódu ukazuje, jak použít ovládací prvek AccessDataSource a FormParameter k zobrazení informací z databáze Microsoft Access v ovládacím prvku GridView . Objekt FormParameter je přidán do SelectParameters kolekce pomocí Add metody .

Důležité

Tento příklad obsahuje textové pole, které přijímá vstup uživatele, což je potenciální bezpečnostní hrozba. Ve výchozím nastavení ASP.NET webové stránky ověřte, že uživatelský vstup neobsahuje skript nebo elementy HTML. Další informace najdete v tématu Přehled zneužití skriptů.

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

void Page_Load(Object sender, EventArgs e){

  // You can add a FormParameter to the AccessDataSource control's
  // SelectParameters collection programmatically.
  AccessDataSource1.SelectParameters.Clear();

  // Security Note: The AccessDataSource uses a FormParameter,
  // Security Note: which does not perform validation of input from the client.
  // Security Note: To validate the value of the FormParameter,
  // Security Note: handle the Selecting event.

  FormParameter formParam = new FormParameter("lastname","LastNameBox");
  formParam.Type=TypeCode.String;
  AccessDataSource1.SelectParameters.Add(formParam);
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:accessdatasource
          id="AccessDataSource1"
          runat="server"
          datasourcemode="DataSet"
          datafile="Northwind.mdb"
          selectcommand="SELECT OrderID,CustomerID,OrderDate,RequiredDate,ShippedDate
                         FROM Orders WHERE EmployeeID =
                         (SELECT EmployeeID FROM Employees WHERE LastName = @lastname)">
      </asp:accessdatasource>

      <br />Enter the name "Davolio" or "King" in the text box and click the button.

      <br />
      <asp:textbox
        id="LastNameBox"
        runat="server" />

      <br />
      <asp:button
        id="Button1"
        runat="server"
        text="Get Records" />

      <br />
      <asp:gridview
          id="GridView1"
          runat="server"
          allowsorting="True"
          datasourceid="AccessDataSource1">
      </asp:gridview>

    </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">

Private Sub Page_Load(sender As Object, e As EventArgs)

  ' You can add a FormParameter to the AccessDataSource control's
  ' SelectParameters collection programmatically.
  AccessDataSource1.SelectParameters.Clear()

  ' Security Note: The AccessDataSource uses a FormParameter,
  ' Security Note: which does not perform validation of input from the client.
  ' Security Note: To validate the value of the FormParameter,
  ' Security Note: handle the Selecting event.

  Dim formParam As New FormParameter("lastname","LastNameBox")
  formParam.Type=TypeCode.String
  AccessDataSource1.SelectParameters.Add(formParam)
End Sub ' Page_Load

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:accessdatasource
          id="AccessDataSource1"
          runat="server"
          datasourcemode="DataSet"
          datafile="Northwind.mdb"
          selectcommand="SELECT OrderID,CustomerID,OrderDate,RequiredDate,ShippedDate
                         FROM Orders WHERE EmployeeID =
                         (SELECT EmployeeID FROM Employees WHERE LastName = @lastname)">
      </asp:accessdatasource>

      <br />Enter the name "Davolio" or "King" in the text box and click the button.

      <br />
      <asp:textbox
        id="LastNameBox"
        runat="server" />

      <br />
      <asp:button
        id="Button1"
        runat="server"
        text="Get Records" />

      <br />
      <asp:gridview
          id="GridView1"
          runat="server"
          allowsorting="True"
          datasourceid="AccessDataSource1">
      </asp:gridview>

    </form>
  </body>
</html>

Poznámky

Třída ParameterCollection představuje kolekci objektů používaných v pokročilých Parameter scénářích datových vazeb s ovládacími prvky zdroje dat. Objekty Parameter se používají k vytvoření vazby hodnot obsažených v místních Page proměnných, souborech cookie HTTP, proměnných relací a hodnotách dalších ovládacích prvků k ovládacím prvkům zdroje dat při načítání, aktualizaci, odstraňování a vkládání dat.

ParameterCollection Pomocí třídy můžete programově spravovat sadu Parameter objektů. Pomocí odpovídajících metod třídy můžete přidávat, vkládat a odebírat ParameterParameterCollection objekty. K programovému načtení Parameter objektů z kolekce použijte jednu z následujících metod:

  • Indexer použijte k získání jednoho Parameter objektu z kolekce, podle názvu nebo pomocí zápisu pole.

  • GetEnumerator Pomocí metody vytvořte System.Collections.IEnumeratorobjekt -implementovaný, který pak můžete použít k získání položek z kolekce.

Vlastnost Count určuje celkový počet položek v kolekci a slouží k určení horní hranice kolekce. Položky v kolekci můžete přidávat a odebírat pomocí Addmetod , Insert, Removea RemoveAt .

V závislosti na implementaci a sémantice konkrétního ovládacího prvku zdroje dat může být důležité pořadí, ve kterém jsou parametry uloženy v kolekci ParameterCollection . Například při použití SqlDataSource ovládacího prvku jako zdroje dat ODBC musí být pořadí Parameter objektů v ParameterCollection kolekci stejné jako pořadí parametrů v parametrizovaných dotazech SQL, které používáte. Při použití SqlDataSource ovládacího prvku s Microsoft SQL Serverem však pořadí Parameter objektů není důležité.

Důležité

Při použití ovládacích prvků zdroje dat se hodnoty vloží do parametrů příkazu bez ověření, což je potenciální ohrožení zabezpečení. K ověření hodnot parametrů před spuštěním příkazu použijte událost v ovládacím prvku zdroje dat. Další informace najdete v tématu Přehled zneužití skriptů.

Následující tabulka uvádí různé třídy parametrů a způsob jejich použití.

Třída parametru Description
Parameter Třída základního parametru. Slouží k vytvoření vazby k místní proměnné nebo libovolnému statickému řetězci DefaultValue pomocí vlastnosti .
ControlParameter Parametr, který lze použít k vytvoření vazby na návratovou hodnotu ovládacího prvku nebo metody.
CookieParameter Parametr, který lze použít k vytvoření vazby na hodnotu souboru cookie.
FormParameter Parametr, který lze použít k vytvoření vazby na atribut aktuální stránky webových formulářů.
QueryStringParameter Parametr, který lze použít k vytvoření vazby na hodnotu předanou na stránku webových formulářů v řetězci dotazu.
SessionParameter Parametr, který lze použít k vytvoření vazby na hodnotu proměnné relace.
ProfileParameter Parametr, který lze použít k vytvoření vazby na hodnotu vlastnosti ASP.NET Profile.

Konstruktory

ParameterCollection()

Inicializuje třídu pro použití zděděnou instancí třídy. Tento konstruktor může být volána pouze zděděnou třídou.

Vlastnosti

Count

Získá počet prvků obsažených v kolekci StateManagedCollection .

(Zděděno od StateManagedCollection)
Item[Int32]

Získá nebo nastaví Parameter objekt v zadaném indexu v kolekci.

Item[String]

Získá nebo nastaví Parameter objekt se zadaným názvem v kolekci.

Metody

Add(Parameter)

Připojí zadaný Parameter objekt na konec kolekce.

Add(String, DbType, String)

Vytvoří objekt se Parameter zadaným názvem, typem databáze a výchozí hodnotou a přidá ho na konec kolekce.

Add(String, String)

Vytvoří objekt se Parameter zadaným názvem a výchozí hodnotou a připojí ho na konec kolekce.

Add(String, TypeCode, String)

Vytvoří objekt se Parameter zadaným názvem TypeCodea výchozí hodnotou a připojí ho na konec kolekce.

Clear()

Odebere všechny položky z StateManagedCollection kolekce.

(Zděděno od StateManagedCollection)
Contains(Parameter)

Určuje, zda ParameterCollection kolekce obsahuje konkrétní hodnotu.

CopyTo(Array, Int32)

Zkopíruje prvky StateManagedCollection kolekce do pole počínaje určitým indexem pole.

(Zděděno od StateManagedCollection)
CopyTo(Parameter[], Int32)

Zkopíruje zadaný index pole parametrů do kolekce parametrů.

CreateKnownType(Int32)

Vytvoří instanci výchozího Parameter objektu.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetEnumerator()

Vrátí iterátor, který prochází kolekcí StateManagedCollection .

(Zděděno od StateManagedCollection)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetKnownTypes()

Získá pole Parameter typů, které ParameterCollection kolekce může obsahovat.

GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
GetValues(HttpContext, Control)

Získá seřazenou kolekci Parameter názvů objektů a jejich odpovídající hodnoty aktuálně obsažené v kolekci.

IndexOf(Parameter)

Určuje index zadaného Parameter objektu v kolekci ParameterCollection .

Insert(Int32, Parameter)

Vloží zadaný Parameter objekt do ParameterCollection kolekce v zadaném indexu.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
OnClear()

Při přepsání v odvozené třídě provede další práci před metodou Clear() odebere všechny položky z kolekce.

(Zděděno od StateManagedCollection)
OnClearComplete()

Provádí další vlastní procesy po vymazání obsahu kolekce.

OnInsert(Int32, Object)

Nastane před zavolání Insert(Int32, Parameter) metody.

OnInsertComplete(Int32, Object)

Vyvolá se Insert(Int32, Parameter) po dokončení metody.

OnParametersChanged(EventArgs)

ParametersChanged Vyvolá událost.

OnRemove(Int32, Object)

Při přepsání v odvozené třídě provede další práci před IList.Remove(Object)IList.RemoveAt(Int32) nebo metoda odebere zadanou položku z kolekce.

(Zděděno od StateManagedCollection)
OnRemoveComplete(Int32, Object)

Vyvolá se Remove(Parameter) po dokončení metody.

OnValidate(Object)

Provádí další vlastní procesy při ověřování hodnoty.

Remove(Parameter)

Odebere zadaný Parameter objekt z ParameterCollection kolekce.

RemoveAt(Int32)

Odebere Parameter objekt v zadaném indexu ParameterCollection z kolekce.

SetDirty()

Vynutí serializaci celé StateManagedCollection kolekce do stavu zobrazení.

(Zděděno od StateManagedCollection)
SetDirtyObject(Object)

Označí zadaný Parameter objekt jako změněný od posledního načtení nebo uložení ze stavu zobrazení.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
UpdateValues(HttpContext, Control)

Iteruje objekty Parameter obsažené v kolekci a volá metodu Evaluate pro každý z nich.

Událost

ParametersChanged

Nastane, když jeden nebo více Parameter objektů obsažených v kolekci změní stav.

Explicitní implementace rozhraní

ICollection.Count

Získá počet prvků obsažených v kolekci StateManagedCollection .

(Zděděno od StateManagedCollection)
ICollection.IsSynchronized

Získá hodnotu označující, zda StateManagedCollection kolekce je synchronizována (bezpečný z více vláken). Tato metoda vrátí false ve všech případech.

(Zděděno od StateManagedCollection)
ICollection.SyncRoot

Získá objekt, který lze použít k synchronizaci přístupu ke kolekci StateManagedCollection . Tato metoda vrátí null ve všech případech.

(Zděděno od StateManagedCollection)
IEnumerable.GetEnumerator()

Vrátí iterátor, který prochází kolekcí StateManagedCollection .

(Zděděno od StateManagedCollection)
IList.Add(Object)

Přidá položku do StateManagedCollection kolekce.

(Zděděno od StateManagedCollection)
IList.Clear()

Odebere všechny položky z StateManagedCollection kolekce.

(Zděděno od StateManagedCollection)
IList.Contains(Object)

Určuje, zda StateManagedCollection kolekce obsahuje konkrétní hodnotu.

(Zděděno od StateManagedCollection)
IList.IndexOf(Object)

Určuje index zadané položky v kolekci StateManagedCollection .

(Zděděno od StateManagedCollection)
IList.Insert(Int32, Object)

Vloží položku do StateManagedCollection kolekce v zadaném indexu.

(Zděděno od StateManagedCollection)
IList.IsFixedSize

Získá hodnotu označující, zda StateManagedCollection kolekce má pevnou velikost. Tato metoda vrátí false ve všech případech.

(Zděděno od StateManagedCollection)
IList.IsReadOnly

Získá hodnotu označující, zda StateManagedCollection je kolekce jen pro čtení.

(Zděděno od StateManagedCollection)
IList.Item[Int32]

IStateManager Získá element v zadaném indexu.

(Zděděno od StateManagedCollection)
IList.Remove(Object)

Odebere první výskyt zadaného objektu StateManagedCollection z kolekce.

(Zděděno od StateManagedCollection)
IList.RemoveAt(Int32)

Odebere IStateManager prvek v zadaném indexu.

(Zděděno od StateManagedCollection)
IStateManager.IsTrackingViewState

Získá hodnotu označující, zda StateManagedCollection kolekce ukládá změny do stavu zobrazení.

(Zděděno od StateManagedCollection)
IStateManager.LoadViewState(Object)

Obnoví dříve uložený stav StateManagedCollection zobrazení kolekce a položek, které IStateManager obsahuje.

(Zděděno od StateManagedCollection)
IStateManager.SaveViewState()

Uloží změny kolekce a každého IStateManager objektuStateManagedCollection, který obsahuje od okamžiku, kdy byla stránka odeslána zpět na server.

(Zděděno od StateManagedCollection)
IStateManager.TrackViewState()

Způsobí, že StateManagedCollection kolekce a každý z IStateManager objektů, které obsahuje, budou sledovat změny stavu zobrazení, aby je bylo možné zachovat napříč požadavky na stejnou stránku.

(Zděděno od StateManagedCollection)

Metody rozšíření

Cast<TResult>(IEnumerable)

Přetypuje prvky objektu na IEnumerable zadaný typ.

OfType<TResult>(IEnumerable)

Filtruje prvky objektu IEnumerable na základě zadaného typu.

AsParallel(IEnumerable)

Umožňuje paralelizaci dotazu.

AsQueryable(IEnumerable)

Převede objekt na IEnumerableIQueryable.

Platí pro

Viz také