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) |