ParameterCollection Classe

Definizione

Rappresenta una raccolta di oggetti derivati da Parameter e Parameter che vengono usati da controlli di origine dati in scenari di data binding avanzati.Represents a collection of Parameter and Parameter-derived objects that are used by data source controls in advanced data-binding scenarios.

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
Ereditarietà
ParameterCollection

Esempi

Nell'esempio di codice seguente viene illustrato come utilizzare un controllo AccessDataSource e un FormParameter per visualizzare le informazioni da un database di Microsoft Access in un controllo di GridView.The following code example demonstrates how to use an AccessDataSource control and a FormParameter to display information from a Microsoft Access database in a GridView control. L'oggetto FormParameter viene aggiunto alla raccolta SelectParameters utilizzando il metodo Add.The FormParameter object is added to the SelectParameters collection using the Add method.

Importante

L'esempio include una casella di testo che accetta l'input dell'utente e rappresenta quindi una potenziale minaccia alla sicurezza.This example has a text box that accepts user input, which is a potential security threat. Per impostazione predefinita, le pagine Web ASP.NET verificano che l'input dell'utente non includa script o elementi HTML.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite script.For more information, see Script Exploits Overview.

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

Commenti

La classe ParameterCollection rappresenta una raccolta di oggetti Parameter utilizzati negli scenari di associazione dati avanzati con i controlli origine dati.The ParameterCollection class represents a collection of Parameter objects used in advanced data-binding scenarios with data source controls. Gli oggetti Parameter vengono utilizzati per associare i valori contenuti nelle variabili Page locali, i cookie HTTP, le variabili di sessione e i valori di altri controlli ai controlli origine dati durante il recupero, l'aggiornamento, l'eliminazione e l'inserimento di dati.The Parameter objects are used to bind the values contained by local Page variables, HTTP cookies, session variables, and other controls' values to data source controls when retrieving, updating, deleting, and inserting data.

Utilizzare la classe ParameterCollection per gestire un set di oggetti Parameter a livello di codice.Use the ParameterCollection class to programmatically manage a set of Parameter objects. È possibile aggiungere, inserire e rimuovere Parameter oggetti usando i metodi appropriati della classe ParameterCollection.You can add, insert, and remove Parameter objects using the appropriate methods of the ParameterCollection class. Per recuperare Parameter oggetti da una raccolta a livello di codice, usare uno dei metodi seguenti:To programmatically retrieve Parameter objects from a collection, use one of following methods:

  • Usare l'indicizzatore per ottenere un singolo oggetto Parameter dalla raccolta, in base al nome o usando la notazione di matrice.Use the indexer to get a single Parameter object from the collection, by name or using array notation.

  • Usare il metodo GetEnumerator per creare un oggetto implementato da System.Collections.IEnumerator, che può quindi essere usato per ottenere gli elementi dalla raccolta.Use the GetEnumerator method to create a System.Collections.IEnumerator-implemented object, which can then be used to get items from the collection.

La proprietà Count specifica il numero totale di elementi nella raccolta e viene utilizzata per determinare il limite superiore della raccolta.The Count property specifies the total number of items in the collection, and is used to determine the upper bound of the collection. È possibile aggiungere e rimuovere elementi dalla raccolta usando i metodi Add, Insert, Removee RemoveAt.You can add and remove items from the collection by using the Add, Insert, Remove, and RemoveAt methods.

A seconda dell'implementazione e della semantica di un particolare controllo origine dati, l'ordine in cui i parametri vengono archiviati nella raccolta ParameterCollection potrebbe essere importante.Depending on the implementation and the semantics of a particular data source control, the order in which the parameters are stored in the ParameterCollection collection might be important. Ad esempio, quando si utilizza il controllo SqlDataSource come origine dati ODBC, l'ordine degli oggetti Parameter nella raccolta ParameterCollection deve corrispondere all'ordine dei parametri nelle query SQL con parametri utilizzate.For example, when using the SqlDataSource control as an ODBC data source, the order of the Parameter objects in the ParameterCollection collection must be the same as the order of the parameters in the parameterized SQL queries you use. Tuttavia, quando si usa il controllo SqlDataSource con Microsoft SQL Server, l'ordine degli oggetti Parameter non è importante.However, when using the SqlDataSource control with Microsoft SQL Server, the order of the Parameter objects are not important.

Importante

Quando si usano i controlli origine dati, i valori vengono inseriti nei parametri del comando senza convalida, che rappresenta una potenziale minaccia per la sicurezza.When you use data source controls, values are inserted into command parameters without validation, which is a potential security threat. Utilizzare un evento nel controllo origine dati per convalidare i valori dei parametri prima dell'esecuzione del comando.Use an event in the data source control to validate parameter values before the command is executed. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite script.For more information, see Script Exploits Overview.

La tabella seguente elenca le diverse classi di parametri e il modo in cui vengono usate.The following table lists the different parameter classes and how they are used.

Classe ParameterParameter Class DescrizioneDescription
Parameter Classe di parametri di base.The base parameter class. Usarlo per eseguire l'associazione a una variabile locale o a qualsiasi stringa statica usando la proprietà DefaultValue.Use it to bind to a local variable or any static string using the DefaultValue property.
ControlParameter Parametro che può essere utilizzato per eseguire l'associazione al valore restituito di una proprietà o di un metodo del controllo.A parameter that can be used to bind to a control's property or method return value.
CookieParameter Parametro che può essere utilizzato per associare il valore di un cookie.A parameter that can be used to bind to the value of a cookie.
FormParameter Parametro che può essere utilizzato per eseguire l'associazione a un attributo della pagina Web Form corrente.A parameter that can be used to bind to an attribute of the current Web Forms page.
QueryStringParameter Parametro che può essere utilizzato per eseguire il binding a un valore passato a una pagina Web Form in una stringa di query.A parameter that can be used to bind to a value passed to a Web Forms page on a query string.
SessionParameter Parametro che può essere utilizzato per eseguire l'associazione al valore di una variabile di sessione.A parameter that can be used to bind to the value of a session variable.
ProfileParameter Parametro che può essere utilizzato per eseguire l'associazione al valore di una proprietà del profilo ASP.NET.A parameter that can be used to bind to the value of an ASP.NET Profile property.

Costruttori

ParameterCollection()

Inizializza la classe per l'uso da parte di un'istanza di una classe ereditata.Initializes the class for use by an inherited class instance. Questo costruttore può essere chiamato solo da una classe ereditata.This constructor can be called only by an inherited class.

Proprietà

Count

Ottiene il numero di elementi contenuti nella raccolta StateManagedCollection.Gets the number of elements contained in the StateManagedCollection collection.

(Ereditato da StateManagedCollection)
Item[Int32]

Ottiene o imposta l'oggetto Parameter nella raccolta, in corrispondenza dell'indice specificato.Gets or sets the Parameter object at the specified index in the collection.

Item[String]

Ottiene o imposta l'oggetto Parameter con il nome specificato nell'insieme.Gets or sets the Parameter object with the specified name in the collection.

Metodi

Add(Parameter)

Aggiunge l'oggetto Parameter specificato alla fine dell'insieme.Appends the specified Parameter object to the end of the collection.

Add(String, DbType, String)

Crea un oggetto Parameter con il nome specificato, il tipo di database e un valore predefinito e lo aggiunge alla fine dell'insieme.Creates a Parameter object with the specified name, database type, and default value, and adds it to the end of the collection.

Add(String, String)

Crea un oggetto Parameter con il nome specificato e il valore predefinito e lo aggiunge alla fine dell'insieme.Creates a Parameter object with the specified name and default value, and appends it to the end of the collection.

Add(String, TypeCode, String)

Crea un oggetto Parameter con il nome specificato, TypeCode e un valore predefinito e lo aggiunge alla fine dell'insieme.Creates a Parameter object with the specified name, TypeCode, and default value, and appends it to the end of the collection.

Clear()

Rimuove tutti gli elementi dalla raccolta StateManagedCollection.Removes all items from the StateManagedCollection collection.

(Ereditato da StateManagedCollection)
Contains(Parameter)

Stabilisce se la raccolta ParameterCollection contiene un valore specifico.Determines whether the ParameterCollection collection contains a specific value.

CopyTo(Array, Int32)

Copia gli elementi della raccolta StateManagedCollection in una matrice, a partire da un indice della matrice specifico.Copies the elements of the StateManagedCollection collection to an array, starting at a particular array index.

(Ereditato da StateManagedCollection)
CopyTo(Parameter[], Int32)

Copia un indice specificato di una matrice di parametri nell'insieme di parametri.Copies a specified index of a parameter array to the parameter collection.

CreateKnownType(Int32)

Crea un'istanza di un oggetto Parameter predefinito.Creates an instance of a default Parameter object.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Ereditato da Object)
GetEnumerator()

Restituisce un iteratore che consente di scorrere la raccolta StateManagedCollection.Returns an iterator that iterates through the StateManagedCollection collection.

(Ereditato da StateManagedCollection)
GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Ereditato da Object)
GetKnownTypes()

Ottiene una matrice di tipi Parameter che l'insieme ParameterCollection può contenere.Gets an array of Parameter types that the ParameterCollection collection can contain.

GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
GetValues(HttpContext, Control)

Ottiene un insieme ordinato dei nomi degli oggetti Parameter e dei valori corrispondenti attualmente contenuti nell'insieme.Gets an ordered collection of Parameter object names and their corresponding values currently contained by the collection.

IndexOf(Parameter)

Determina l'indice di un oggetto Parameter specificato nell'insieme ParameterCollection.Determines the index of a specified Parameter object in the ParameterCollection collection.

Insert(Int32, Parameter)

Inserisce l'oggetto Parameter specificato nell'insieme ParameterCollection in corrispondenza dell'indice specificato.Inserts the specified Parameter object into the ParameterCollection collection at the specified index.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
OnClear()

Quando sottoposto a override in una classe derivata, esegue ulteriori operazioni prima che il metodo Clear() rimuova tutti gli elementi dalla raccolta.When overridden in a derived class, performs additional work before the Clear() method removes all items from the collection.

(Ereditato da StateManagedCollection)
OnClearComplete()

Consente di eseguire processi personalizzati aggiuntivi dopo la cancellazione del contenuto dell'insieme.Performs additional custom processes after clearing the contents of the collection.

OnInsert(Int32, Object)

Si verifica prima che il metodo Insert(Int32, Parameter) venga richiamato.Occurs before the Insert(Int32, Parameter) method is called.

OnInsertComplete(Int32, Object)

Si verifica dopo il completamento del metodo Insert(Int32, Parameter).Occurs after the Insert(Int32, Parameter) method completes.

OnParametersChanged(EventArgs)

Genera l'evento ParametersChanged.Raises the ParametersChanged event.

OnRemove(Int32, Object)

Quando sottoposto a override in una classe derivata, esegue ulteriori operazioni prima che il metodo IList.Remove(Object) o IList.RemoveAt(Int32) rimuova l'elemento specificato dalla raccolta.When overridden in a derived class, performs additional work before the IList.Remove(Object) or IList.RemoveAt(Int32) method removes the specified item from the collection.

(Ereditato da StateManagedCollection)
OnRemoveComplete(Int32, Object)

Si verifica dopo il completamento del metodo Remove(Parameter).Occurs after the Remove(Parameter) method completes.

OnValidate(Object)

Esegue processi personalizzati aggiuntivi durante la convalida di un valore.Performs additional custom processes when validating a value.

Remove(Parameter)

Rimuove l'oggetto Parameter specificato dall'insieme ParameterCollection.Removes the specified Parameter object from the ParameterCollection collection.

RemoveAt(Int32)

Rimuove l'oggetto Parameter in corrispondenza dell'indice specificato dall'insieme ParameterCollection.Removes the Parameter object at the specified index from the ParameterCollection collection.

SetDirty()

Impone la serializzazione dell'intera raccolta StateManagedCollection nello stato di visualizzazione.Forces the entire StateManagedCollection collection to be serialized into view state.

(Ereditato da StateManagedCollection)
SetDirtyObject(Object)

Contrassegna l'oggetto Parameter specificato come modificato rispetto all'ultimo caricamento o salvataggio dallo stato di visualizzazione.Marks the specified Parameter object as having changed since the last load or save from view state.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Ereditato da Object)
UpdateValues(HttpContext, Control)

Scorre gli oggetti Parameter contenuti nell'insieme e chiama il metodo Evaluate su ciascuno di essi.Iterates through the Parameter objects contained by the collection, and calls the Evaluate method on each one.

Eventi

ParametersChanged

Si verifica quando lo stato di uno o più oggetti Parameter contenuti nell'insieme viene modificato.Occurs when one or more Parameter objects contained by the collection changes state.

Implementazioni dell'interfaccia esplicita

ICollection.Count

Ottiene il numero di elementi contenuti nella raccolta StateManagedCollection.Gets the number of elements contained in the StateManagedCollection collection.

(Ereditato da StateManagedCollection)
ICollection.IsSynchronized

Ottiene un valore che indica se la raccolta StateManagedCollection è sincronizzata (thread-safe).Gets a value indicating whether the StateManagedCollection collection is synchronized (thread safe). Questo metodo restituisce false in tutti i casi.This method returns false in all cases.

(Ereditato da StateManagedCollection)
ICollection.SyncRoot

Ottiene un oggetto che può essere usato per sincronizzare l'accesso alla raccolta StateManagedCollection .Gets an object that can be used to synchronize access to the StateManagedCollection collection. Questo metodo restituisce null in tutti i casi.This method returns null in all cases.

(Ereditato da StateManagedCollection)
IEnumerable.GetEnumerator()

Restituisce un iteratore che consente di scorrere la raccolta StateManagedCollection.Returns an iterator that iterates through the StateManagedCollection collection.

(Ereditato da StateManagedCollection)
IList.Add(Object)

Aggiunge un elemento alla raccolta StateManagedCollection.Adds an item to the StateManagedCollection collection.

(Ereditato da StateManagedCollection)
IList.Clear()

Rimuove tutti gli elementi dalla raccolta StateManagedCollection.Removes all items from the StateManagedCollection collection.

(Ereditato da StateManagedCollection)
IList.Contains(Object)

Stabilisce se la raccolta StateManagedCollection contiene un valore specifico.Determines whether the StateManagedCollection collection contains a specific value.

(Ereditato da StateManagedCollection)
IList.IndexOf(Object)

Determina l'indice di un elemento specificato nella raccolta StateManagedCollection.Determines the index of a specified item in the StateManagedCollection collection.

(Ereditato da StateManagedCollection)
IList.Insert(Int32, Object)

Inserisce un elemento nella raccolta StateManagedCollection in corrispondenza dell'indice specificato.Inserts an item into the StateManagedCollection collection at the specified index.

(Ereditato da StateManagedCollection)
IList.IsFixedSize

Ottiene un valore che indica se la dimensione della raccolta StateManagedCollection è fissa.Gets a value indicating whether the StateManagedCollection collection has a fixed size. Questo metodo restituisce false in tutti i casi.This method returns false in all cases.

(Ereditato da StateManagedCollection)
IList.IsReadOnly

Ottiene un valore che indica se la raccolta StateManagedCollection è di sola lettura.Gets a value indicating whether the StateManagedCollection collection is read-only.

(Ereditato da StateManagedCollection)
IList.Item[Int32]

Ottiene l'elemento IStateManager in corrispondenza dell'indice specificato.Gets the IStateManager element at the specified index.

(Ereditato da StateManagedCollection)
IList.Remove(Object)

Rimuove la prima occorrenza dell'oggetto specificato dalla raccolta StateManagedCollection.Removes the first occurrence of the specified object from the StateManagedCollection collection.

(Ereditato da StateManagedCollection)
IList.RemoveAt(Int32)

Rimuove l'elemento IStateManager in corrispondenza dell'indice specificato.Removes the IStateManager element at the specified index.

(Ereditato da StateManagedCollection)
IStateManager.IsTrackingViewState

Ottiene un valore che indica se la raccolta StateManagedCollection salva le modifiche apportate al relativo stato di visualizzazione.Gets a value indicating whether the StateManagedCollection collection is saving changes to its view state.

(Ereditato da StateManagedCollection)
IStateManager.LoadViewState(Object)

Ripristina lo stato di visualizzazione salvato in precedenza della raccolta StateManagedCollection e gli elementi IStateManager in essa contenuti.Restores the previously saved view state of the StateManagedCollection collection and the IStateManager items it contains.

(Ereditato da StateManagedCollection)
IStateManager.SaveViewState()

Salva le modifiche apportate alla raccolta StateManagedCollection e ogni oggetto IStateManager in essa contenuto dal momento in cui è stato eseguito il postback della pagina nel server.Saves the changes to the StateManagedCollection collection and each IStateManager object it contains since the time the page was posted back to the server.

(Ereditato da StateManagedCollection)
IStateManager.TrackViewState()

Fa in modo che la raccolta StateManagedCollection e ogni oggetto IStateManager in essa contenuto tenga traccia delle modifiche apportate al rispettivo stato di visualizzazione, in modo da consentirne il mantenimento nelle diverse richieste per la stessa pagina.Causes the StateManagedCollection collection and each of the IStateManager objects it contains to track changes to their view state so they can be persisted across requests for the same page.

(Ereditato da StateManagedCollection)

Metodi di estensione

Cast<TResult>(IEnumerable)

Esegue il cast degli elementi di un oggetto IEnumerable nel tipo specificato.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtra gli elementi di un oggetto IEnumerable in base a un tipo specificato.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Consente la parallelizzazione di una query.Enables parallelization of a query.

AsQueryable(IEnumerable)

Converte un oggetto IEnumerable in un oggetto IQueryable.Converts an IEnumerable to an IQueryable.

Si applica a

Vedi anche