CustomExpression Класс

Определение

Предоставляет способ задания пользовательского запроса LINQ, который вызывается в ответ на событие.

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
Наследование

Примеры

В следующем примере показано, как создать CustomExpression объект, используемый элементом QueryExtender управления. Пользовательское выражение вызывает FilterProducts метод, содержащий пользовательское выражение LINQ. Результат операции фильтрации отображается в элементе GridView управления.

В следующем примере показан обработчик событий, содержащий пользовательский запрос LINQ. Выражение фильтрует таблицу Product в базе данных AdventureWorks и отображает продукты, которые имеют цену по списку больше или равно $3500,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

Комментарии

Класс CustomExpression используется с элементом QueryExtender управления. Элемент QueryExtender управления поддерживает различные параметры, которые можно использовать для фильтрации данных. Элемент QueryExtender управления поддерживает фильтры, позволяющие выполнять поиск строк, искать значения между заданным диапазоном, сравнивать значение свойства в таблице с указанным значением и сортировать данные. Эти параметры предоставляются в виде выражений LINQ в элементе QueryExtender управления. Эти выражения фильтра можно использовать или предоставить пользовательское выражение, которое можно использовать в элементе QueryExtender управления. Класс CustomExpression позволяет указать пользовательское выражение в приложении и вызвать его в обработчике событий.

Примечание

Вы можете указать пользовательский запрос, вызываемый методом, а не обработчиком событий, с помощью MethodExpression класса.

Конструкторы

CustomExpression()

Инициализирует новый экземпляр класса CustomExpression.

Свойства

Context

Получает экземпляр HttpContext элемента-владельца.

(Унаследовано от DataSourceExpression)
DataSource

Получает объект источника данных, связанный с элементом-владельцем.

(Унаследовано от DataSourceExpression)
IsTrackingViewState

Получает значение, указывающее, отслеживает ли объект выражения источника данных изменения в своем состоянии представления.

(Унаследовано от DataSourceExpression)
Owner

Получает элемент-владелец.

(Унаследовано от DataSourceExpression)
Parameters

Получает параметры, связанные с данным объектом DataSourceExpression.

(Унаследовано от ParameterDataSourceExpression)
ViewState

Получает экземпляр класса StateBag, содержащий сведения о текущем состоянии представления.

(Унаследовано от DataSourceExpression)

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetQueryable(IQueryable)

Предоставляет доступ к измененному объекту IQueryable, использующему источник данных.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
LoadViewState(Object)

Загружает в объект ParameterDataSourceExpression состояние значений, которое необходимо сохранить.

(Унаследовано от ParameterDataSourceExpression)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
SaveViewState()

Сохраняет текущее состояние просмотра объекта ParameterDataSourceExpression.

(Унаследовано от ParameterDataSourceExpression)
SetContext(Control, HttpContext, IQueryableDataSource)

Выполняет выражение, используя заданные элемент-владелец, контекст и источник данных.

(Унаследовано от ParameterDataSourceExpression)
SetDirty()

Помечает объект DataSourceExpression для сохранения его состояния в состоянии просмотра.

(Унаследовано от DataSourceExpression)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
TrackViewState()

Отслеживает изменения состояния просмотра объекта ParameterDataSourceExpression, позволяя сохранять их в объекте StateBag для этого объекта.

(Унаследовано от ParameterDataSourceExpression)

События

Querying

Происходит, если значение источника данных IQueryable задано.

Явные реализации интерфейса

IStateManager.IsTrackingViewState

Будучи реализован классом, получает значение, указывающее, отслеживает ли объект выражения источника данных изменения в своем состоянии представления.

(Унаследовано от DataSourceExpression)
IStateManager.LoadViewState(Object)

Будучи реализован классом, загружает ранее сохраненное состояние представления объекта выражения источника данных.

(Унаследовано от DataSourceExpression)
IStateManager.SaveViewState()

Будучи реализован классом, сохраняет текущее состояние просмотра объекта DataSourceExpression.

(Унаследовано от DataSourceExpression)
IStateManager.TrackViewState()

Будучи реализован классом, отслеживает изменения состояния представления объекта DataSourceExpression, позволяя сохранять их в объекте StateBag для объекта выражения источника данных.

(Унаследовано от DataSourceExpression)

Применяется к

См. также раздел