Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original
Este tema aún no ha recibido ninguna valoración - Valorar este tema

Parameter (Clase)

Proporciona un mecanismo que los controles de origen de datos utilizan para enlazar a las variables, las identidades y las opciones de la aplicación, y otros datos. Actúa como clase base para todos los parámetros de ASP.NET.

Espacio de nombres:  System.Web.UI.WebControls
Ensamblado:  System.Web (en System.Web.dll)
public class Parameter : ICloneable, IStateManager

El tipo Parameter expone los siguientes miembros.

  NombreDescripción
Método públicoParameter()Inicializa una nueva instancia predeterminada de la clase de Parameter .
Método protegidoParameter(Parameter)Inicializa una nueva instancia de la clase de Parameter con los valores original, instancia especificada.
Método públicoParameter(String)Inicializa una nueva instancia de la clase de Parameter , utilizando el nombre especificado.
Método públicoParameter(String, DbType)Inicializa una nueva instancia de la clase de Parameter , utilizando el nombre y el tipo de base de datos especificados.
Método públicoParameter(String, TypeCode)Inicializa una nueva instancia de la clase de Parameter , utilizando el nombre y el tipo especificados.
Método públicoParameter(String, DbType, String)Inicializa una nueva instancia de la clase de Parameter , utilizando el nombre especificado, el tipo de base de datos especificado, y el valor especificado para la propiedad de DefaultValue .
Método públicoParameter(String, TypeCode, String)Inicializa una nueva instancia de la clase de Parameter , utilizando el nombre especificado, el tipo especificado, y la cadena especificada para la propiedad de DefaultValue .
Arriba
  NombreDescripción
Propiedad públicaConvertEmptyStringToNullObtiene o establece un valor que indica si el valor que el objeto de Parameter está enlazado debe convertirse a null si es String.Empty.
Propiedad públicaDbTypeObtiene o establece el tipo de base de datos de parámetro.
Propiedad públicaDefaultValueEspecifica un valor predeterminado para el parámetro, si el valor que el parámetro es restringir para ser inicializado cuando se llama al método de Evaluate .
Propiedad públicaDirectionIndica si el objeto de Parameter se utiliza para enlazar un valor a un control, el control se puede utilizar para cambiar el valor.
Propiedad protegidaIsTrackingViewStateObtiene un valor que indica si el objeto de Parameter es guardar cambios en el estado de vista.
Propiedad públicaNameObtiene o establece el nombre del parámetro.
Propiedad públicaSizeObtiene o establece el tamaño del parámetro.
Propiedad públicaTypeObtiene o establece el tipo del parámetro.
Propiedad protegidaViewStateObtiene un diccionario de información de estado que permite guardar y restaurar el estado de un objeto de Parameter mediante varias solicitudes de la misma página.
Arriba
  NombreDescripción
Método protegidoClonedevuelve un duplicado de la instancia actual de Parameter .
Método públicoMiembro estáticoConvertDbTypeToTypeCodeConvierte un valor de DbType un valor equivalente de TypeCode .
Método públicoMiembro estáticoConvertTypeCodeToDbTypeConvierte un valor de TypeCode un valor equivalente de DbType .
Método públicoEquals(Object)Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object).
Método protegidoEvaluateLas actualizaciones y devuelven el valor del objeto de Parameter .
Método protegidoFinalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método públicoGetDatabaseTypeObtiene el valor de DbType que es equivalente al tipo CLR de la instancia actual de Parameter .
Método públicoGetHashCodeActúa como función hash para un tipo concreto. (Se hereda de Object).
Método públicoGetTypeObtiene el objeto Type de la instancia actual. (Se hereda de Object).
Método protegidoLoadViewStateRestablece el estado de vista previamente guardado de la vista de origen de datos.
Método protegidoMemberwiseClone Crea una copia superficial del Object actual. (Se hereda de Object).
Método protegidoOnParameterChangedLlama al método de OnParametersChanged de la colección de ParameterCollection que contiene el objeto de Parameter .
Método protegidoSaveViewStateGuarda los cambios en el estado de vista del objeto de Parameter porque el tiempo que la página se envía al servidor.
Método protegidoSetDirtyMarca el objeto de Parameter así que incluirán su estado en el estado de vista.
Método públicoToStringConvierte el valor de esta instancia en su representación de cadena equivalente. (Invalida a Object.ToString()).
Método protegidoTrackViewStateHace que el objeto de Parameter para realizar el seguimiento de cambios en el estado de vista para que se pueden almacenar en el objeto de ViewState de control y guardarse a través de las solicitudes de la misma página.
Arriba
  NombreDescripción
Implementación explícita de interfacesMétodo privadoICloneable.Clonedevuelve un duplicado de la instancia actual de Parameter .
Implementación explícita de interfacesPropiedad privadaIStateManager.IsTrackingViewStateInfraestructura. Obtiene un valor que indica si el objeto de Parameter es guardar cambios en el estado de vista.
Implementación explícita de interfacesMétodo privadoIStateManager.LoadViewStateInfraestructura. Restablece el estado de vista previamente guardado de la vista de origen de datos.
Implementación explícita de interfacesMétodo privadoIStateManager.SaveViewStateInfraestructura. Guarda los cambios en el estado de vista del objeto de Parameter porque el tiempo que la página se envía al servidor.
Implementación explícita de interfacesMétodo privadoIStateManager.TrackViewStateInfraestructura. Hace que el objeto de Parameter para realizar el seguimiento de cambios en el estado de vista para que se pueden almacenar en el objeto de ViewState de control y guardarse a través de las solicitudes de la misma página.
Arriba

La clase de Parameter representa un parámetro en una consulta SQL parametrizada, una expresión de filtrado, o una llamada al método del objeto comercial que un control de origen de datos ASP.NET utilice seleccionar, filtro, o modifica datos. los objetos deParameter contenidas en un objeto de ParameterCollection . los objetos deParameter se evalúan en tiempo de ejecución, para enlazar los valores de las variables que representan a cualquier método utiliza un control de origen de datos para interactuar con datos.

Utilice las clases que derivan de Parameter con origen de datos y controles enlazados a datos para compilar aplicaciones basadas en web de los datos. Estas clases de parámetros se utilizan en los controles de origen de datos para enlazar tipos concretos de valores encontrados en aplicaciones web a los marcadores de las cadenas de consulta SQL, parámetros de método del objeto comercial, y más. La tabla siguiente se enumeran los tipos de parámetros que se incluyen en ASP.NET.

ControlParameter

Enlazar cualquier propiedad pública de un control de servidor Web.

FormParameter

enlaza un campo de formulario.

SessionParameter

Enlaza un campo de la sesión.

RouteParameter

Enlaza un parámetro de dirección URL de ruta.

CookieParameter

enlaza un campo de la cookie.

QueryStringParameter

Enlaza un parámetro de cadena de consulta.

ProfileParameter

Enlaza un campo de perfil.

Extiende la clase base de Parameter cuando desee implementar dispone de tipos de parámetros personalizados.

los objetos deParameter son muy simples: tienen Name y una propiedad de Type , se pueden representar mediante declaración, y pueden seguir el estado entre varias solicitudes HTTP. Todos los parámetros admite una propiedad de DefaultValue , para los casos cuando un parámetro se enlaza a un valor, pero el valor se evalúa como null en tiempo de ejecución.

Al utilizar una colección de objetos Parameter con un control de origen de datos, el orden en la colección podría importar. Para obtener más información sobre cómo se utilizan los parámetros, vea Using the SqlDataSource and AccessDataSource Controls with Parameters y Using Parameters with the ObjectDataSource Control.

El ejemplo siguiente se muestra cómo utilizar el valor seleccionado de un control de DropDownList en la cláusula dehere de la hora de una consulta SQL. El ejemplo utiliza la clase de ControlParameter , que se deriva de la clase de ControlParameter .

el elemento de SelectCommand define la consulta con un parámetro denominado “@Title” donde el valor de DropDownList1 debe ir. El elemento de ControlParameter especifica que el marcador de posición “@Title” se reemplazará por el valor de la propiedad de SelectedValue de control de DropDownList1 . El elemento de ControlParameter se agrega a la colección de SelectParameters de control de SqlDataSource .


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <p><asp:dropdownlist
          id="DropDownList1"
          runat="server"
          autopostback="True">
          <asp:listitem selected="True">Sales Representative</asp:listitem>
          <asp:listitem>Sales Manager</asp:listitem>
          <asp:listitem>Vice President, Sales</asp:listitem>
      </asp:dropdownlist></p>

      <asp:sqldatasource
          id="SqlDataSource1"
          runat="server"
          connectionstring="<%$ ConnectionStrings:MyNorthwind%>"
          selectcommand="SELECT LastName FROM Employees WHERE Title = @Title">
          <selectparameters>
              <asp:controlparameter name="Title" controlid="DropDownList1" propertyname="SelectedValue"/>
          </selectparameters>
      </asp:sqldatasource>

      <p><asp:listbox
          id="ListBox1"
          runat="server"
          datasourceid="SqlDataSource1"
          datatextfield="LastName">
      </asp:listbox></p>

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


El ejemplo siguiente es similar al anterior, pero utiliza código en lugar de marcado. Cuando se carga la página por primera vez, el control de DropDownList tienen no se usa ningún valor seleccionado, y la propiedad de DefaultValue del objeto de Parameter .


<%@ Page Language="C#" CodeFile="param1acs.aspx.cs" Inherits="param1acs_aspx" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:DropDownList
          runat="server"
          AutoPostBack="True"
          id="DropDownList1">
            <asp:ListItem Value="USA">USA</asp:ListItem>
            <asp:ListItem Value="UK">UK</asp:ListItem>
         </asp:DropDownList>

        <asp:DataGrid
          runat="server"
          id="DataGrid1" />    
    </div>
    </form>
</body>
</html>


El código siguiente se muestra la clase de código subyacente de la página en el ejemplo anterior.


public partial class param1acs_aspx : System.Web.UI.Page 
{
    private void Page_Load(object sender, System.EventArgs e)
    {
        SqlDataSource sqlSource = new SqlDataSource(
          ConfigurationManager.ConnectionStrings["MyNorthwind"].ConnectionString,
          "SELECT FirstName, LastName FROM Employees WHERE Country = @country;");

        ControlParameter country = new ControlParameter();
        country.Name = "country";
        country.Type = TypeCode.String;
        country.ControlID = "DropDownList1";
        country.PropertyName = "SelectedValue";

        // If the DefaultValue is not set, the DataGrid does not
        // display anything on the first page load. This is because
        // on the first page load, the DropDownList has no
        // selected item, and the ControlParameter evaluates to
        // String.Empty.
        country.DefaultValue = "USA";

        sqlSource.SelectParameters.Add(country);

        // Add the SqlDataSource to the page controls collection.
        Page.Controls.Add(sqlSource);

        DataGrid1.DataSource = sqlSource;
        DataGrid1.DataBind();
    }
}


El ejemplo de código siguiente muestra cómo extender la clase de Parameter para crear un nuevo tipo de parámetro que puede ser utilizado por los controles de origen de datos y otros controles en escenarios de enlace de datos. Un control de origen de datos puede utilizar un parámetro de StaticParameter para enlazar el valor de cualquier objeto, normalmente una cadena, declarada en una página de formularios web forms.


namespace Samples.AspNet {

  using System;
  using System.ComponentModel;
  using System.Security.Permissions;
  using System.Web;
  using System.Web.UI;
  using System.Web.UI.WebControls;

  [AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)]
  public class StaticParameter : Parameter {

    public StaticParameter() {
    }
    // The StaticParameter(string, object) constructor
    // initializes the DataValue property and calls the
    // Parameter(string) constructor to initialize the Name property.
    public StaticParameter(string name, object value) : base(name) {
      DataValue = value;
    }
    // The StaticParameter(string, TypeCode, object) constructor
    // initializes the DataValue property and calls the
    // Parameter(string, TypeCode) constructor to initialize the Name and
    // Type properties.
    public StaticParameter(string name, TypeCode type, object value) : base(name, type) {
      DataValue = value;
    }
    // The StaticParameter copy constructor is provided to ensure that
    // the state contained in the DataValue property is copied to new
    // instances of the class.
    protected StaticParameter(StaticParameter original) : base(original) {
      DataValue = original.DataValue;
    }

    // The Clone method is overridden to call the
    // StaticParameter copy constructor, so that the data in
    // the DataValue property is correctly transferred to the
    // new instance of the StaticParameter.
    protected override Parameter Clone() {
      return new StaticParameter(this);
    }
    // The DataValue can be any arbitrary object and is stored in ViewState.
    public object DataValue {
      get {
        return ViewState["Value"];
      }
      set {
        ViewState["Value"] = value;
      }
    }
    // The Value property is a type safe convenience property
    // used when the StaticParameter represents string data.
    // It gets the string value of the DataValue property, and
    // sets the DataValue property directly.
    public string Value {
      get {
        object o = DataValue;
        if (o == null || !(o is string))
          return String.Empty;
        return (string)o;
      }
      set {
        DataValue = value;
        OnParameterChanged();
      }
    }

    // The Evaluate method is overridden to return the
    // DataValue property instead of the DefaultValue.
    protected override object Evaluate(HttpContext context, Control control) {

      if (context.Request == null)
          return null;

      return DataValue;
    }
  }
}


.NET Framework

Compatible con: 4.5, 4, 3.5, 3.0, 2.0

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
¿Te ha resultado útil?
(Caracteres restantes: 1500)

Adiciones de comunidad

AGREGAR
© 2013 Microsoft. Reservados todos los derechos.