ParameterCollection Clase

Definición

Representa una colección de objetos derivados de Parameter y Parameter que utilizan controles de origen de datos en escenarios de enlace de datos avanzados.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
Herencia
ParameterCollection

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar un control AccessDataSource y un FormParameter para mostrar información de una base de datos de Microsoft Access en un control 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. El objeto FormParameter se agrega a la colección SelectParameters con el método Add.The FormParameter object is added to the SelectParameters collection using the Add method.

Importante

Este ejemplo tiene un cuadro de texto que acepta datos proporcionados por el usuario, lo que puede suponer una amenaza para la seguridad.This example has a text box that accepts user input, which is a potential security threat. De forma predeterminada, ASP.NET Web Pages valida que los datos proporcionados por el usuario no incluyen elementos HTML ni de script.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Para más información, consulte Información general sobre los ataques mediante scripts.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>

Comentarios

La clase ParameterCollection representa una colección de objetos Parameter utilizados en escenarios avanzados de enlace de datos con controles de origen de datos.The ParameterCollection class represents a collection of Parameter objects used in advanced data-binding scenarios with data source controls. Los objetos Parameter se usan para enlazar los valores contenidos por las variables locales de Page, las cookies HTTP, las variables de sesión y los valores de otros controles a los controles de origen de datos al recuperar, actualizar, eliminar e insertar datos.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.

Utilice la clase ParameterCollection para administrar mediante programación un conjunto de objetos Parameter.Use the ParameterCollection class to programmatically manage a set of Parameter objects. Puede Agregar, insertar y quitar objetos Parameter mediante los métodos adecuados de la clase ParameterCollection.You can add, insert, and remove Parameter objects using the appropriate methods of the ParameterCollection class. Para recuperar mediante programación objetos Parameter de una colección, use uno de los métodos siguientes:To programmatically retrieve Parameter objects from a collection, use one of following methods:

  • Use el indexador para obtener un solo objeto Parameter de la colección, por nombre o mediante la notación de matriz.Use the indexer to get a single Parameter object from the collection, by name or using array notation.

  • Use el método GetEnumerator para crear un objeto implementado @no__t -1, que se puede usar para obtener elementos de la colección.Use the GetEnumerator method to create a System.Collections.IEnumerator-implemented object, which can then be used to get items from the collection.

La propiedad Count especifica el número total de elementos de la colección y se usa para determinar el límite superior de la colección.The Count property specifies the total number of items in the collection, and is used to determine the upper bound of the collection. Puede Agregar y quitar elementos de la colección mediante los métodos Add, Insert, Remove y RemoveAt.You can add and remove items from the collection by using the Add, Insert, Remove, and RemoveAt methods.

Dependiendo de la implementación y la semántica de un control de origen de datos determinado, el orden en que se almacenan los parámetros en la colección ParameterCollection podría ser 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. Por ejemplo, cuando se usa el control SqlDataSource como origen de datos ODBC, el orden de los objetos Parameter en la colección ParameterCollection debe ser el mismo que el orden de los parámetros de las consultas SQL parametrizadas que se usan.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. Sin embargo, cuando se usa el control SqlDataSource con Microsoft SQL Server, el orden de los objetos Parameter no es importante.However, when using the SqlDataSource control with Microsoft SQL Server, the order of the Parameter objects are not important.

Importante

Cuando se usan controles de origen de datos, los valores se insertan en parámetros de comando sin validación, lo que es una posible amenaza de seguridad.When you use data source controls, values are inserted into command parameters without validation, which is a potential security threat. Use un evento en el control de origen de datos para validar los valores de los parámetros antes de que se ejecute el comando.Use an event in the data source control to validate parameter values before the command is executed. Para más información, consulte Información general sobre los ataques mediante scripts.For more information, see Script Exploits Overview.

En la tabla siguiente se enumeran las distintas clases de parámetros y cómo se usan.The following table lists the different parameter classes and how they are used.

Parameter (clase)Parameter Class DescripciónDescription
Parameter La clase de parámetro base.The base parameter class. Úselo para enlazar a una variable local o a cualquier cadena estática mediante la propiedad DefaultValue.Use it to bind to a local variable or any static string using the DefaultValue property.
ControlParameter Parámetro que se puede utilizar para enlazar con el valor devuelto de la propiedad o el método de un control.A parameter that can be used to bind to a control's property or method return value.
CookieParameter Parámetro que se puede utilizar para enlazar con el valor de una cookie.A parameter that can be used to bind to the value of a cookie.
FormParameter Parámetro que se puede utilizar para enlazar a un atributo de la página de formularios Web Forms actual.A parameter that can be used to bind to an attribute of the current Web Forms page.
QueryStringParameter Parámetro que se puede utilizar para enlazar a un valor pasado a una página de formularios Web Forms en una cadena de consulta.A parameter that can be used to bind to a value passed to a Web Forms page on a query string.
SessionParameter Parámetro que se puede utilizar para enlazar con el valor de una variable de sesión.A parameter that can be used to bind to the value of a session variable.
ProfileParameter Parámetro que se puede utilizar para enlazar con el valor de una propiedad de perfil ASP.NET.A parameter that can be used to bind to the value of an ASP.NET Profile property.

Constructores

ParameterCollection()

Inicializa la clase para que la use una instancia de la clase heredada.Initializes the class for use by an inherited class instance. A este constructor sólo lo puede llamar una clase heredada.This constructor can be called only by an inherited class.

Propiedades

Count

Obtiene el número de elementos incluidos en la colección StateManagedCollection.Gets the number of elements contained in the StateManagedCollection collection.

(Heredado de StateManagedCollection)
Item[Int32]

Obtiene o establece el objeto Parameter en el índice especificado de la colección.Gets or sets the Parameter object at the specified index in the collection.

Item[String]

Obtiene o establece el objeto Parameter con el nombre especificado en la colección.Gets or sets the Parameter object with the specified name in the collection.

Métodos

Add(Parameter)

Agrega el objeto Parameter especificado al final de la colección.Appends the specified Parameter object to the end of the collection.

Add(String, DbType, String)

Crea un objeto Parameter con el nombre, el tipo de base de datos y el valor predeterminado especificados, y lo agrega al final de la colección.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 objeto Parameter con el nombre y valor predeterminado especificados y lo anexa al final de la colección.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 objeto Parameter con el nombre especificado, TypeCode, y un valor predeterminado, y lo anexa al final de la colección.Creates a Parameter object with the specified name, TypeCode, and default value, and appends it to the end of the collection.

Clear()

Quita todos los elementos de la colección StateManagedCollection.Removes all items from the StateManagedCollection collection.

(Heredado de StateManagedCollection)
Contains(Parameter)

Determina si la colección ParameterCollection contiene un valor específico.Determines whether the ParameterCollection collection contains a specific value.

CopyTo(Array, Int32)

Copia los elementos de la colección StateManagedCollection en una matriz a partir de un índice de matriz concreto.Copies the elements of the StateManagedCollection collection to an array, starting at a particular array index.

(Heredado de StateManagedCollection)
CopyTo(Parameter[], Int32)

Copia un índice especificado de una matriz de parámetros en la colección de parámetros.Copies a specified index of a parameter array to the parameter collection.

CreateKnownType(Int32)

Crea una instancia de un objeto Parameter predeterminado.Creates an instance of a default Parameter object.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
GetEnumerator()

Devuelve un iterador que permite recorrer en iteración la colección StateManagedCollection.Returns an iterator that iterates through the StateManagedCollection collection.

(Heredado de StateManagedCollection)
GetHashCode()

Sirve como función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetKnownTypes()

Obtiene una matriz de los tipos Parameter que la colección ParameterCollection puede contener.Gets an array of Parameter types that the ParameterCollection collection can contain.

GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
GetValues(HttpContext, Control)

Obtiene una colección ordenada de los nombres de objeto Parameter y sus valores correspondientes que contiene actualmente la colección.Gets an ordered collection of Parameter object names and their corresponding values currently contained by the collection.

IndexOf(Parameter)

Determina el índice de un objeto Parameter especificado en la colección ParameterCollection.Determines the index of a specified Parameter object in the ParameterCollection collection.

Insert(Int32, Parameter)

Inserta el objeto Parameter especificado en el índice especificado de la colección ParameterCollection.Inserts the specified Parameter object into the ParameterCollection collection at the specified index.

MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
OnClear()

Cuando se reemplaza en una clase derivada, realiza un trabajo adicional antes de que el método Clear() quite todos los elementos de la colección.When overridden in a derived class, performs additional work before the Clear() method removes all items from the collection.

(Heredado de StateManagedCollection)
OnClearComplete()

Realiza procesos personalizados adicionales después de borrar el contenido de la colección.Performs additional custom processes after clearing the contents of the collection.

OnInsert(Int32, Object)

Aparece antes de la llamada al método Insert(Int32, Parameter).Occurs before the Insert(Int32, Parameter) method is called.

OnInsertComplete(Int32, Object)

Se produce cuando termina el método Insert(Int32, Parameter).Occurs after the Insert(Int32, Parameter) method completes.

OnParametersChanged(EventArgs)

Genera el evento ParametersChanged.Raises the ParametersChanged event.

OnRemove(Int32, Object)

Cuando se reemplaza en una clase derivada, realiza un trabajo adicional antes de que los métodos IList.Remove(Object) o IList.RemoveAt(Int32) quiten el elemento especificado de la colección.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.

(Heredado de StateManagedCollection)
OnRemoveComplete(Int32, Object)

Se produce cuando termina el método Remove(Parameter).Occurs after the Remove(Parameter) method completes.

OnValidate(Object)

Realiza procesos de personalización adicionales al validar un valor.Performs additional custom processes when validating a value.

Remove(Parameter)

Quita el objeto Parameter especificado de la colección ParameterCollection.Removes the specified Parameter object from the ParameterCollection collection.

RemoveAt(Int32)

Quita el objeto Parameter del índice especificado de la colección ParameterCollection.Removes the Parameter object at the specified index from the ParameterCollection collection.

SetDirty()

Obliga a serializar la colección StateManagedCollection completa en el estado de vista.Forces the entire StateManagedCollection collection to be serialized into view state.

(Heredado de StateManagedCollection)
SetDirtyObject(Object)

Marca el objeto Parameter especificado como cambiado desde la última vez que se cargó o se guardó desde el estado de vista.Marks the specified Parameter object as having changed since the last load or save from view state.

ToString()

Devuelve un valor de tipo string que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)
UpdateValues(HttpContext, Control)

Recorre en iteración los objetos Parameter que contiene la colección y llama al método Evaluate en cada uno.Iterates through the Parameter objects contained by the collection, and calls the Evaluate method on each one.

Eventos

ParametersChanged

Aparece cuando cambia el estado de uno o varios objetos Parameter que contiene la colección.Occurs when one or more Parameter objects contained by the collection changes state.

Implementaciones de interfaz explícitas

ICollection.Count

Obtiene el número de elementos incluidos en la colección StateManagedCollection.Gets the number of elements contained in the StateManagedCollection collection.

(Heredado de StateManagedCollection)
ICollection.IsSynchronized

Obtiene un valor que indica si la colección StateManagedCollection está sincronizada (seguro para subprocesos).Gets a value indicating whether the StateManagedCollection collection is synchronized (thread safe). Este método devuelve false en todos los casos.This method returns false in all cases.

(Heredado de StateManagedCollection)
ICollection.SyncRoot

Obtiene un objeto que se puede usar para sincronizar el acceso a la colección StateManagedCollection .Gets an object that can be used to synchronize access to the StateManagedCollection collection. Este método devuelve null en todos los casos.This method returns null in all cases.

(Heredado de StateManagedCollection)
IEnumerable.GetEnumerator()

Devuelve un iterador que permite recorrer en iteración la colección StateManagedCollection.Returns an iterator that iterates through the StateManagedCollection collection.

(Heredado de StateManagedCollection)
IList.Add(Object)

Agrega un elemento a la colección StateManagedCollection.Adds an item to the StateManagedCollection collection.

(Heredado de StateManagedCollection)
IList.Clear()

Quita todos los elementos de la colección StateManagedCollection.Removes all items from the StateManagedCollection collection.

(Heredado de StateManagedCollection)
IList.Contains(Object)

Determina si la colección StateManagedCollection contiene un valor específico.Determines whether the StateManagedCollection collection contains a specific value.

(Heredado de StateManagedCollection)
IList.IndexOf(Object)

Determina el índice de un elemento especificado en la colección StateManagedCollection.Determines the index of a specified item in the StateManagedCollection collection.

(Heredado de StateManagedCollection)
IList.Insert(Int32, Object)

Inserta un elemento en el índice especificado de la colección StateManagedCollection.Inserts an item into the StateManagedCollection collection at the specified index.

(Heredado de StateManagedCollection)
IList.IsFixedSize

Obtiene un valor que indica si la colección StateManagedCollection tiene un tamaño fijo.Gets a value indicating whether the StateManagedCollection collection has a fixed size. Este método devuelve false en todos los casos.This method returns false in all cases.

(Heredado de StateManagedCollection)
IList.IsReadOnly

Obtiene un valor que indica si la colección StateManagedCollection es de solo lectura.Gets a value indicating whether the StateManagedCollection collection is read-only.

(Heredado de StateManagedCollection)
IList.Item[Int32]

Obtiene el elemento IStateManager en el índice especificado.Gets the IStateManager element at the specified index.

(Heredado de StateManagedCollection)
IList.Remove(Object)

Quita la primera aparición del objeto especificado de la colección StateManagedCollection.Removes the first occurrence of the specified object from the StateManagedCollection collection.

(Heredado de StateManagedCollection)
IList.RemoveAt(Int32)

Quita el elemento IStateManager en el índice especificado.Removes the IStateManager element at the specified index.

(Heredado de StateManagedCollection)
IStateManager.IsTrackingViewState

Obtiene un valor que indica si la colección StateManagedCollection está guardando los cambios en su estado de vista.Gets a value indicating whether the StateManagedCollection collection is saving changes to its view state.

(Heredado de StateManagedCollection)
IStateManager.LoadViewState(Object)

Restaura el estado de vista previamente guardado de la colección StateManagedCollection y de los elementos IStateManager que contiene.Restores the previously saved view state of the StateManagedCollection collection and the IStateManager items it contains.

(Heredado de StateManagedCollection)
IStateManager.SaveViewState()

Guarda los cambios realizados en la colección StateManagedCollection y en cada objeto IStateManager que contiene desde el momento en que la página se devolvió al servidor.Saves the changes to the StateManagedCollection collection and each IStateManager object it contains since the time the page was posted back to the server.

(Heredado de StateManagedCollection)
IStateManager.TrackViewState()

Hace que la colección StateManagedCollection y cada uno de los objetos IStateManager que contiene realicen un seguimiento de los cambios en el estado de vista para que se puedan conservar entre distintas solicitudes de la misma página.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.

(Heredado de StateManagedCollection)

Métodos de extensión

Cast<TResult>(IEnumerable)

Convierte los elementos de IEnumerable en el tipo especificado.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtra los elementos de IEnumerable en función de un tipo especificado.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Habilita la paralelización de una consulta.Enables parallelization of a query.

AsQueryable(IEnumerable)

Convierte una interfaz IEnumerable en IQueryable.Converts an IEnumerable to an IQueryable.

Se aplica a

Consulte también: