CustomExpression Classe

Definição

Fornece uma maneira de especificar uma consulta LINQ personalizada que é chamada em resposta a um 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
Herança

Exemplos

O exemplo a seguir mostra como criar um CustomExpression objeto usado pelo QueryExtender controle. A expressão personalizada chama o FilterProducts método, que contém uma expressão LINQ personalizada. O resultado da operação de filtragem é exibido em um GridView controle.

O exemplo a seguir mostra um manipulador de eventos que contém uma consulta LINQ personalizada. A expressão filtra a tabela Produto no banco de dados AdventureWorks e exibe produtos que têm um preço de lista maior ou igual a US$ 3.500,00.

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

Comentários

A CustomExpression classe é usada com o QueryExtender controle. O QueryExtender controle dá suporte a uma variedade de opções que você pode usar para filtrar dados. O QueryExtender controle dá suporte a filtros que permitem pesquisar cadeias de caracteres, pesquisar valores entre um intervalo especificado, comparar um valor de propriedade em uma tabela com um valor especificado e classificar dados. Essas opções são fornecidas como expressões LINQ no QueryExtender controle. Você pode usar essas expressões de filtro ou fornecer uma expressão personalizada que pode ser usada no QueryExtender controle. A CustomExpression classe permite especificar uma expressão personalizada em seu aplicativo e chamá-la em um manipulador de eventos.

Note

Você pode fornecer uma consulta personalizada que é chamada por um método em vez de um manipulador de eventos usando a MethodExpression classe.

Construtores

Nome Description
CustomExpression()

Inicializa uma nova instância da classe CustomExpression.

Propriedades

Nome Description
Context

Obtém a HttpContext instância do controle de proprietário.

(Herdado de DataSourceExpression)
DataSource

Obtém o objeto de fonte de dados associado ao controle de proprietário.

(Herdado de DataSourceExpression)
IsTrackingViewState

Obtém um valor que indica se um objeto de expressão de fonte de dados está acompanhando suas alterações de estado de exibição.

(Herdado de DataSourceExpression)
Owner

Obtém o controle de proprietário.

(Herdado de DataSourceExpression)
Parameters

Obtém os parâmetros associados a esse DataSourceExpression objeto.

(Herdado de ParameterDataSourceExpression)
ViewState

Obtém uma instância da StateBag classe que contém as informações de estado de exibição atuais.

(Herdado de DataSourceExpression)

Métodos

Nome Description
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função hash predefinida.

(Herdado de Object)
GetQueryable(IQueryable)

Fornece acesso ao objeto modificado que IQueryable a fonte de dados usa.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
LoadViewState(Object)

Carrega o estado dos valores no ParameterDataSourceExpression objeto que devem ser persistidos.

(Herdado de ParameterDataSourceExpression)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
SaveViewState()

Salva o estado de exibição atual do ParameterDataSourceExpression objeto.

(Herdado de ParameterDataSourceExpression)
SetContext(Control, HttpContext, IQueryableDataSource)

Executa a expressão usando o controle de proprietário, o contexto e a fonte de dados especificados.

(Herdado de ParameterDataSourceExpression)
SetDirty()

Marca o DataSourceExpression objeto para que seu estado seja salvo no estado de exibição.

(Herdado de DataSourceExpression)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
TrackViewState()

Controla as alterações de estado de exibição do ParameterDataSourceExpression objeto para que as alterações possam ser armazenadas no StateBag objeto do objeto.

(Herdado de ParameterDataSourceExpression)

Eventos

Nome Description
Querying

Ocorre quando o valor da IQueryable fonte de dados é definido.

Implantações explícitas de interface

Nome Description
IStateManager.IsTrackingViewState

Quando implementado por uma classe, obtém um valor que indica se um objeto de expressão de fonte de dados está acompanhando suas alterações de estado de exibição.

(Herdado de DataSourceExpression)
IStateManager.LoadViewState(Object)

Quando implementado por uma classe, carrega o estado de exibição salvo anteriormente do objeto de expressão da fonte de dados.

(Herdado de DataSourceExpression)
IStateManager.SaveViewState()

Quando implementado por uma classe, salva o estado de exibição atual do DataSourceExpression objeto.

(Herdado de DataSourceExpression)
IStateManager.TrackViewState()

Quando implementado por uma classe, rastreia as alterações de estado de exibição do DataSourceExpression objeto para que as alterações possam ser armazenadas no StateBag objeto para o objeto de expressão da fonte de dados.

(Herdado de DataSourceExpression)

Aplica-se a

Confira também