CustomExpression 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í.
Ofrece una manera de especificar una consulta LINQ personalizada a la que se llama en respuesta a un evento.
public ref class CustomExpression : System::Web::UI::WebControls::Expressions::ParameterDataSourceExpression
public class CustomExpression : System.Web.UI.WebControls.Expressions.ParameterDataSourceExpression
type CustomExpression = class
inherit ParameterDataSourceExpression
Public Class CustomExpression
Inherits ParameterDataSourceExpression
- Herencia
Ejemplos
En el ejemplo siguiente se muestra cómo crear un CustomExpression objeto utilizado por el QueryExtender control . La expresión personalizada llama al FilterProducts
método , que contiene una expresión LINQ personalizada. El resultado de la operación de filtrado se muestra en un GridView control .
En el ejemplo siguiente se muestra un controlador de eventos que contiene una consulta LINQ personalizada. La expresión filtra la tabla Product de la base de datos AdventureWorks y muestra los productos que tienen un precio de lista mayor o igual que 3500,00 USD.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.Expressions;
using System.Linq;
public partial class _Default : System.Web.UI.Page
{
protected void FilterProducts(object sender, CustomExpressionEventArgs e)
{
e.Query = from p in e.Query.Cast<Product>()
where p.ListPrice >= 3500
select p;
}
}
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.Expressions
Imports System.Data.Linq
Partial Class CustomVB
Inherits System.Web.UI.Page
Protected Sub FilterProducts(ByVal sender As Object, ByVal e As CustomExpressionEventArgs)
e.Query = From p In e.Query.Cast(Of Product)() _
Where p.ListPrice >= 3500 _
Select p
End Sub
Comentarios
La CustomExpression clase se usa con el QueryExtender control . El QueryExtender control admite una variedad de opciones que puede usar para filtrar los datos. El QueryExtender control admite filtros que permiten buscar cadenas, valores de búsqueda entre un intervalo especificado, comparar un valor de propiedad de una tabla con un valor especificado y ordenar datos. Estas opciones se proporcionan como expresiones LINQ en el QueryExtender control . Puede usar estas expresiones de filtro o puede proporcionar una expresión personalizada que puede usar en el QueryExtender control . La CustomExpression clase permite especificar una expresión personalizada en la aplicación y llamarla en un controlador de eventos.
Nota
Puede proporcionar una consulta personalizada a la que llama un método en lugar de un controlador de eventos mediante la MethodExpression clase .
Constructores
CustomExpression() |
Inicializa una nueva instancia de la clase CustomExpression. |
Propiedades
Context |
Obtiene la instancia de HttpContext del control propietario. (Heredado de DataSourceExpression) |
DataSource |
Obtiene el objeto de origen de datos asociado al control propietario. (Heredado de DataSourceExpression) |
IsTrackingViewState |
Obtiene un valor que indica si un objeto de expresión de origen de datos realiza un seguimiento de los cambios en su estado de vista. (Heredado de DataSourceExpression) |
Owner |
Obtiene el control propietario. (Heredado de DataSourceExpression) |
Parameters |
Obtiene los parámetros asociados a este objeto DataSourceExpression. (Heredado de ParameterDataSourceExpression) |
ViewState |
Obtiene una instancia de la clase StateBag que contiene información sobre el estado de vista actual. (Heredado de DataSourceExpression) |
Métodos
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetQueryable(IQueryable) |
Proporciona el acceso al objeto IQueryable el modificado que el origen de datos utiliza. |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
LoadViewState(Object) |
Carga el estado de los valores del objeto ParameterDataSourceExpression que debe almacenarse. (Heredado de ParameterDataSourceExpression) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
SaveViewState() |
Guarda el estado de vista actual del objeto ParameterDataSourceExpression. (Heredado de ParameterDataSourceExpression) |
SetContext(Control, HttpContext, IQueryableDataSource) |
Ejecuta la expresión usando el control propietario, el contexto y el origen de datos especificados. (Heredado de ParameterDataSourceExpression) |
SetDirty() |
Marca el objeto DataSourceExpression de modo que su estado se guarde en el estado de vista. (Heredado de DataSourceExpression) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
TrackViewState() |
Realiza un seguimiento de los cambios en el estado de vista del objeto ParameterDataSourceExpression para poder almacenarlos en el objeto StateBag del objeto. (Heredado de ParameterDataSourceExpression) |
Eventos
Querying |
Se produce cuando se establece el valor del origen de datos IQueryable. |
Implementaciones de interfaz explícitas
IStateManager.IsTrackingViewState |
Cuando se implementa mediante una clase, obtiene un valor que indica si un objeto de expresión de origen de datos realiza un seguimiento de los cambios en su estado de vista. (Heredado de DataSourceExpression) |
IStateManager.LoadViewState(Object) |
Cuando se implementa mediante una clase, carga el estado de vista anteriormente guardado del objeto de expresión de origen de datos. (Heredado de DataSourceExpression) |
IStateManager.SaveViewState() |
Cuando lo implementa una clase, guarda el estado de vista actual del objeto DataSourceExpression. (Heredado de DataSourceExpression) |
IStateManager.TrackViewState() |
Cuando se implementa mediante una clase, realiza un seguimiento de los cambios en el estado de vista del objeto DataSourceExpression para que puedan almacenarse en el objeto StateBag del objeto de expresión de origen de datos. (Heredado de DataSourceExpression) |