CustomExpression Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Provides a way to specify a custom LINQ query that is called in response to an event.
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
- Inheritance
Examples
The following example shows how to create a CustomExpression object that is used by the QueryExtender control. The custom expression calls the FilterProducts
method, which contains a custom LINQ expression. The result of the filtering operation is displayed in a GridView control.
The following example shows an event handler that contains a custom LINQ query. The expression filters the Product table in the AdventureWorks database and displays products that have a list price greater than or equal to $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
Remarks
The CustomExpression class is used with the QueryExtender control. The QueryExtender control supports a variety of options that you can use to filter data. The QueryExtender control supports filters that let you search strings, search values between a specified range, compare a property value in a table to a specified value, and sort data. These options are provided as LINQ expressions in the QueryExtender control. You can use these filter expressions or you can provide a custom expression that you can use in the QueryExtender control. The CustomExpression class enables you to specify a custom expression in your application and call it in an event handler.
Note
You can provide a custom query that is called by a method instead of an event handler by using the MethodExpression class.
Constructors
CustomExpression() |
Initializes a new instance of the CustomExpression class. |
Properties
Context |
Gets the HttpContext instance of the owner control. (Inherited from DataSourceExpression) |
DataSource |
Gets the data source object that is associated with the owner control. (Inherited from DataSourceExpression) |
IsTrackingViewState |
Gets a value that indicates whether a data source expression object is tracking its view state changes. (Inherited from DataSourceExpression) |
Owner |
Gets the owner control. (Inherited from DataSourceExpression) |
Parameters |
Gets the parameters that are associated with this DataSourceExpression object. (Inherited from ParameterDataSourceExpression) |
ViewState |
Gets an instance of the StateBag class that contains the current view state information. (Inherited from DataSourceExpression) |
Methods
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
GetHashCode() |
Serves as the default hash function. (Inherited from Object) |
GetQueryable(IQueryable) |
Provides access to the modified IQueryable object that the data source uses. |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
LoadViewState(Object) |
Loads the state of the values in the ParameterDataSourceExpression object that must be persisted. (Inherited from ParameterDataSourceExpression) |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
SaveViewState() |
Saves the current view state of the ParameterDataSourceExpression object. (Inherited from ParameterDataSourceExpression) |
SetContext(Control, HttpContext, IQueryableDataSource) |
Executes the expression by using the specified owner control, context, and data source. (Inherited from ParameterDataSourceExpression) |
SetDirty() |
Marks the DataSourceExpression object so that its state will be saved in view state. (Inherited from DataSourceExpression) |
ToString() |
Returns a string that represents the current object. (Inherited from Object) |
TrackViewState() |
Tracks view-state changes of the ParameterDataSourceExpression object so that the changes can be stored in the StateBag object for the object. (Inherited from ParameterDataSourceExpression) |
Events
Querying |
Occurs when the IQueryable data source value is set. |
Explicit Interface Implementations
IStateManager.IsTrackingViewState |
When implemented by a class, gets a value that indicates whether a data source expression object is tracking its view state changes. (Inherited from DataSourceExpression) |
IStateManager.LoadViewState(Object) |
When implemented by a class, loads the previously saved view state of the data source expression object. (Inherited from DataSourceExpression) |
IStateManager.SaveViewState() |
When implemented by a class, saves the current view state of the DataSourceExpression object. (Inherited from DataSourceExpression) |
IStateManager.TrackViewState() |
When implemented by a class, tracks view state changes of the DataSourceExpression object so that the changes can be stored in the StateBag object for the data source expression object. (Inherited from DataSourceExpression) |