MethodExpression クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
メソッドで定義されているカスタム LINQ クエリを指定する方法を提供します。
public ref class MethodExpression : System::Web::UI::WebControls::Expressions::ParameterDataSourceExpression
public class MethodExpression : System.Web.UI.WebControls.Expressions.ParameterDataSourceExpression
type MethodExpression = class
inherit ParameterDataSourceExpression
Public Class MethodExpression
Inherits ParameterDataSourceExpression
- 継承
例
次の例は、AdventureWorks データベースの Products テーブルの ListPrice フィールドで、表示価格が 400 以上の製品を検索する方法を示しています。 この例では、ページ コード内のメソッドでカスタム LINQ クエリを作成する方法と、コントロールで メソッドを呼び出す方法を QueryExtender 示します。
Public Shared Function FilterStandardPrice(ByVal query As _
IQueryable(Of Product)) As IQueryable(Of Product)
Return From p In query _
Where p.ListPrice >= 400 _
Select p
End Function
public static IQueryable<Product>
FilterStandardPrice(IQueryable<Product> query)
{
return from p in query
where p.ListPrice >= 400
select p;
}
次の例は、 ページで メソッドを呼び出す方法を示しています。
<html>
<head runat="server">
<title>Custom Filter</title>
</head>
<body>
<form id="form1" runat="server">
<asp:LinqDataSource ID="LinqDataSource1" runat="server"
ContextTypeName="AdventureworksDataContext" EntityTypeName=""
TableName="Products">
</asp:LinqDataSource>
<asp:QueryExtender ID="QueryExtender1" runat="server"
TargetControlID="LinqDataSource1">
<asp:MethodExpression MethodName="FilterStandardPrice" >
</asp:MethodExpression>
</asp:QueryExtender>
<asp:GridView ID="GridView1" runat="server"
DataSourceID="LinqDataSource1"
DataKeyNames="ProductID"
</asp:GridView>
</form>
</body>
</html>
注釈
コントロールは QueryExtender 、カスタム LINQ クエリをサポートします。 メソッドでカスタム LINQ クエリを定義し、フィルター オプションを MethodExpression 使用してコントロールでクエリを QueryExtender 呼び出すことができます。
カスタム LINQ クエリを含むメソッドは、次の条件を満たしている必要があります。
メソッドは静的である必要があります (
Shared
Visual Basic の場合)。 最初のパラメーターは または IQueryable<T>IEnumerable<T> オブジェクトである必要があります。 メソッドには、複数のパラメーターを指定できます。戻り値は、照会される IQueryable<T> 型または IEnumerable<T> 型を変更できません。
では MethodExpression 、クエリを含む メソッドを次の順序で検索します。
コントロールに TypeNameQueryExtender プロパティが指定されている場合、 MethodExpression オブジェクトは指定した型の メソッドを検索します。
データ ソースが を実装している IDynamicDataSource場合、 メソッドはコンテキスト型 (DataContext または ObjectContext オブジェクト) で メソッドを検索します。
メソッドは、テンプレート コントロール、ページの基底クラス、またはユーザー コントロール内の メソッドを検索します。
クラスは MethodExpression クラスに似ています CustomExpression が、メソッド式はメソッド呼び出しに応答して実行され、カスタム式はイベントに応答して実行されます。
コンストラクター
MethodExpression() |
MethodExpression クラスの新しいインスタンスを初期化します。 |
プロパティ
Context |
所有者コントロールの HttpContext インスタンスを取得します。 (継承元 DataSourceExpression) |
DataSource |
所有者コントロールに関連付けられているデータ ソース オブジェクトを取得します。 (継承元 DataSourceExpression) |
IgnoreIfNotFound |
式を無視する必要があるかどうかを示す値を取得または設定します。 |
IsTrackingViewState |
データ ソース式オブジェクトがビューステートの変更を追跡しているかどうかを示す値を取得します。 (継承元 DataSourceExpression) |
MethodName |
カスタム LINQ クエリを含むメソッドの名前を取得または設定します。 |
Owner |
所有者コントロールを取得します。 (継承元 DataSourceExpression) |
Parameters |
この DataSourceExpression オブジェクトに関連付けられているパラメーターを取得します。 (継承元 ParameterDataSourceExpression) |
TypeName |
メソッドにカスタム クエリが含まれているクラスを取得または設定します。 |
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) |
明示的なインターフェイスの実装
IStateManager.IsTrackingViewState |
クラスによって実装されると、データ ソース式オブジェクトがビューステートの変更を追跡しているかどうかを示す値を取得します。 (継承元 DataSourceExpression) |
IStateManager.LoadViewState(Object) |
クラスによって実装されると、データ ソース式オブジェクトの前回保存されたビューステートを読み込みます。 (継承元 DataSourceExpression) |
IStateManager.SaveViewState() |
クラスによって実装されると、DataSourceExpression オブジェクトの現在のビューステートを保存します。 (継承元 DataSourceExpression) |
IStateManager.TrackViewState() |
クラスによって実装されると、DataSourceExpression オブジェクトのビューステートの変更を追跡し、データ ソース式オブジェクトに対応する StateBag オブジェクトに、その変更を保存できるようにします。 (継承元 DataSourceExpression) |
適用対象
.NET