QueryStringParameter Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Enlaza el valor de un campo de cadena de consulta de solicitud HTTP a un objeto de parámetro.
public ref class QueryStringParameter : System::Web::UI::WebControls::Parameter
public class QueryStringParameter : System.Web.UI.WebControls.Parameter
type QueryStringParameter = class
inherit Parameter
Public Class QueryStringParameter
Inherits Parameter
- Herencia
Ejemplos
En el ejemplo siguiente se muestra cómo crear un objeto QueryStringParameter que se va a usar como filtro al mostrar datos en un control GridView. Agregue el objeto QueryStringParameter a la colección FilterParameters del control AccessDataSource. El objeto de parámetro enlaza el valor del campo de cadena de consulta denominado country
a su cadena de FilterExpression. Dado que no se especifica ninguna propiedad DefaultValue para el parámetro , si no se pasa ningún campo denominado country
con la cadena de consulta, el control AccessDataSource produce una excepción de NullReferenceException. Si se pasa un campo denominado country
pero no tiene ningún valor, el control GridView no muestra ningún dato.
<%@ Page language="C#"%>
<!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" method="post" runat="server">
<!-- Use a Query String with country=USA -->
<asp:gridview
id ="GridView1"
runat="server"
datasourceid="MyAccessDataSource" />
<!-- Security Note: The AccessDataSource uses a QueryStringParameter,
Security Note: which does not perform validation of input from the client. -->
<asp:accessdatasource
id="MyAccessDataSource"
runat="server"
datafile="Northwind.mdb"
selectcommand="SELECT EmployeeID, LastName, Address, PostalCode, Country FROM Employees"
filterexpression="Country = '{0}'">
<filterparameters>
<asp:querystringparameter name="country" type="String" querystringfield="country" />
</filterparameters>
</asp:accessdatasource>
</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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<!-- Use a Query String with country=USA -->
<asp:gridview
id ="GridView1"
runat="server"
datasourceid="MyAccessDataSource" />
<!-- Security Note: The AccessDataSource uses a QueryStringParameter,
Security Note: which does not perform validation of input from the client. -->
<asp:accessdatasource
id="MyAccessDataSource"
runat="server"
datafile="Northwind.mdb"
selectcommand="SELECT EmployeeID, LastName, Address, PostalCode, Country FROM Employees"
filterexpression="Country = '{0}'">
<filterparameters>
<asp:querystringparameter name="country" type="String" querystringfield="country" />
</filterparameters>
</asp:accessdatasource>
</form>
</body>
</html>
Comentarios
Puede usar la clase QueryStringParameter para enlazar el valor de un campo que se pasa como parte de una cadena de consulta de solicitud HTTP a un parámetro que se usa en una consulta o comando con parámetros. El campo se recupera de la colección QueryString.
Los controles que enlazan datos al parámetro pueden producir una excepción si se hace referencia a un objeto QueryStringParameter, pero no se pasa ningún par de nombre/valor de cadena de consulta correspondiente. Del mismo modo, es posible que no muestren datos si se pasa el nombre del campo de cadena de consulta sin un valor correspondiente. Para evitar estas situaciones, establezca la propiedad DefaultValue cuando proceda.
La clase QueryStringParameter proporciona la propiedad QueryStringField, que identifica el nombre del valor de cadena de consulta al que se va a enlazar. También proporciona las propiedades que se heredan de la clase Parameter.
Importante
La clase QueryStringParameter no valida el valor que se pasa; proporciona el valor sin procesar. Sin embargo, puede validar el valor de un objeto QueryStringParameter en un control de origen de datos. Para ello, controle el evento Selecting
, Updating
, Inserting
o Deleting
del control de origen de datos y compruebe el valor del parámetro en el controlador de eventos. Si el valor del parámetro no supera las pruebas de validación, puede cancelar la operación de datos estableciendo la propiedad Cancel de la clase de CancelEventArgs asociada en true
.
Constructores
QueryStringParameter() |
Inicializa una nueva instancia sin nombre de la clase QueryStringParameter. |
QueryStringParameter(QueryStringParameter) |
Inicializa una nueva instancia de la clase QueryStringParameter mediante los valores de la instancia especificada por el parámetro |
QueryStringParameter(String, DbType, String) |
Inicializa una nueva instancia con nombre de la clase QueryStringParameter, utilizando el campo de cadena de consulta especificado y el tipo de datos del parámetro . |
QueryStringParameter(String, String) |
Inicializa una nueva instancia con nombre de la clase QueryStringParameter, utilizando la cadena especificada para identificar a qué campo de cadena de consulta se va a enlazar. |
QueryStringParameter(String, TypeCode, String) |
Inicializa una nueva instancia con nombre y fuertemente tipada de la clase QueryStringParameter, utilizando la cadena especificada para identificar a qué campo de cadena de consulta se va a enlazar. |
Propiedades
ConvertEmptyStringToNull |
Obtiene o establece un valor que indica si el valor al que está enlazado el objeto Parameter debe convertirse en |
DbType |
Obtiene o establece el tipo de base de datos del parámetro . (Heredado de Parameter) |
DefaultValue |
Especifica un valor predeterminado para el parámetro , si el valor del parámetro está enlazado a no inicializarse cuando se llama al método Evaluate(HttpContext, Control). (Heredado de Parameter) |
Direction |
Indica si el objeto Parameter se usa para enlazar un valor a un control o si el control se puede usar para cambiar el valor. (Heredado de Parameter) |
IsTrackingViewState |
Obtiene un valor que indica si el objeto Parameter guarda los cambios en su estado de vista. (Heredado de Parameter) |
Name |
Obtiene o establece el nombre del parámetro . (Heredado de Parameter) |
QueryStringField |
Obtiene o establece el nombre del campo de cadena de consulta al que se enlaza el parámetro. |
Size |
Obtiene o establece el tamaño del parámetro . (Heredado de Parameter) |
Type |
Obtiene o establece el tipo del parámetro . (Heredado de Parameter) |
ValidateInput |
Obtiene o establece si el valor del parámetro de cadena de consulta se está validando o no. |
ViewState |
Obtiene un diccionario de información de estado que permite guardar y restaurar el estado de vista de un objeto Parameter en varias solicitudes para la misma página. (Heredado de Parameter) |
Métodos
Clone() |
Devuelve un duplicado de la instancia de QueryStringParameter actual. |
Equals(Object) |
Determina si el objeto especificado es igual al objeto actual. (Heredado de Object) |
Evaluate(HttpContext, Control) |
Actualiza y devuelve el valor del objeto QueryStringParameter. |
GetDatabaseType() |
Obtiene el valor DbType equivalente al tipo CLR de la instancia de Parameter actual. (Heredado de Parameter) |
GetHashCode() |
Actúa como función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
LoadViewState(Object) |
Restaura el estado de vista guardado previamente de la vista del origen de datos. (Heredado de Parameter) |
MemberwiseClone() |
Crea una copia superficial del Objectactual. (Heredado de Object) |
OnParameterChanged() |
Llama al método OnParametersChanged(EventArgs) de la colección ParameterCollection que contiene el objeto Parameter. (Heredado de Parameter) |
SaveViewState() |
Guarda los cambios en el estado de vista del objeto Parameter desde el momento en que se devolvió la página al servidor. (Heredado de Parameter) |
SetDirty() |
Marca el objeto Parameter para que su estado se registre en estado de vista. (Heredado de Parameter) |
ToString() |
Convierte el valor de esta instancia en su representación de cadena equivalente. (Heredado de Parameter) |
TrackViewState() |
Hace que el objeto Parameter realice un seguimiento de los cambios en su estado de vista para que se puedan almacenar en el objeto ViewState del control y conservarse en las solicitudes de la misma página. (Heredado de Parameter) |
Implementaciones de interfaz explícitas
ICloneable.Clone() |
Devuelve un duplicado de la instancia de Parameter actual. (Heredado de Parameter) |
IStateManager.IsTrackingViewState |
Obtiene un valor que indica si el objeto Parameter guarda los cambios en su estado de vista. (Heredado de Parameter) |
IStateManager.LoadViewState(Object) |
Restaura el estado de vista guardado previamente de la vista del origen de datos. (Heredado de Parameter) |
IStateManager.SaveViewState() |
Guarda los cambios en el estado de vista del objeto Parameter desde el momento en que se devolvió la página al servidor. (Heredado de Parameter) |
IStateManager.TrackViewState() |
Hace que el objeto Parameter realice un seguimiento de los cambios en su estado de vista para que se puedan almacenar en el objeto ViewState del control y conservarse en las solicitudes de la misma página. (Heredado de Parameter) |