MethodExpression Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lehetővé teszi egy metódusban definiált egyéni LINQ-lekérdezés megadását.
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
- Öröklődés
Példák
Az alábbi példa bemutatja, hogyan kereshet a Termékek tábla ListPrice mezőjében az AdventureWorks adatbázisban olyan termékek esetében, amelyek listaára 400 vagy több. Ez a példa bemutatja, hogyan hozhat létre egyéni LINQ-lekérdezést egy metódusban lapkódban, és hogyan hívhatja meg a metódust a QueryExtender vezérlőben.
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;
}
Az alábbi példa bemutatja, hogyan hívhatja meg a metódust a lapon.
<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>
Megjegyzések
A QueryExtender vezérlő támogatja az egyéni LINQ-lekérdezéseket. Egyéni LINQ-lekérdezést definiálhat egy metódusban, és a MethodExpression szűrőbeállítással meghívhatja a lekérdezést a QueryExtender vezérlőben.
Az egyéni LINQ-lekérdezést tartalmazó metódusnak meg kell felelnie a következő feltételeknek:
A metódusnak statikusnak kell lennie (
SharedVisual Basic). Az első paraméternek egy vagy IQueryable<T> objektumnak IEnumerable<T> kell lennie. A metódus több paramétert is tartalmazhat.A visszaadott érték nem módosíthatja a IQueryable<T> lekérdezett típust vagy IEnumerable<T> típust.
A MethodExpression lekérdezést tartalmazó metódus keresése a következő sorrendben:
TypeName Ha egy tulajdonság meg van adva a QueryExtender vezérlőben, az MethodExpression objektum a megadott típusban keresi a metódust.
Ha az adatforrás implementálva van IDynamicDataSource, a metódus a környezeti típuson (DataContext vagy ObjectContext objektumon) keresi a metódust.)
A metódus egy sablonvezérlőben, a lap alaposztályában vagy egy felhasználói vezérlőben keresi a metódust.
Az MethodExpression osztály az osztályhoz hasonló CustomExpression , azzal a kivételrel, hogy a metóduskifejezés egy metódushívásra válaszul lesz végrehajtva, az egyéni kifejezés pedig egy eseményre válaszul lesz végrehajtva.
Konstruktorok
| Name | Description |
|---|---|
| MethodExpression() |
Inicializálja a MethodExpression osztály új példányát. |
Tulajdonságok
| Name | Description |
|---|---|
| Context |
Lekéri a HttpContext tulajdonosvezérlő példányát. (Öröklődés forrása DataSourceExpression) |
| DataSource |
Lekéri a tulajdonosvezérlőhöz társított adatforrás-objektumot. (Öröklődés forrása DataSourceExpression) |
| IgnoreIfNotFound |
Olyan értéket kap vagy állít be, amely jelzi, hogy a kifejezést figyelmen kívül kell-e hagyni. |
| IsTrackingViewState |
Olyan értéket kap, amely jelzi, hogy egy adatforráskifejezés-objektum követi-e a nézetállapot változásait. (Öröklődés forrása DataSourceExpression) |
| MethodName |
Lekéri vagy beállítja az egyéni LINQ-lekérdezést tartalmazó metódus nevét. |
| Owner |
Lekéri a tulajdonosi irányítást. (Öröklődés forrása DataSourceExpression) |
| Parameters |
Lekéri az objektumhoz DataSourceExpression társított paramétereket. (Öröklődés forrása ParameterDataSourceExpression) |
| TypeName |
Lekéri vagy beállítja azt az osztályt, amelynek metódusa tartalmazza az egyéni lekérdezést. |
| ViewState |
Lekéri az StateBag osztály egy példányát, amely az aktuális nézetállapot-információkat tartalmazza. (Öröklődés forrása DataSourceExpression) |
Metódusok
| Name | Description |
|---|---|
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetQueryable(IQueryable) |
A kifejezés feloldása a megadott IQueryable objektum használatával. |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| LoadViewState(Object) |
Betölti a megőrzendő objektum értékeinek ParameterDataSourceExpression állapotát. (Öröklődés forrása ParameterDataSourceExpression) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| SaveViewState() |
Menti az objektum aktuális nézetállapotát ParameterDataSourceExpression . (Öröklődés forrása ParameterDataSourceExpression) |
| SetContext(Control, HttpContext, IQueryableDataSource) |
A kifejezést a megadott tulajdonosvezérlő, környezet és adatforrás használatával hajtja végre. (Öröklődés forrása ParameterDataSourceExpression) |
| SetDirty() |
Megjelöli az DataSourceExpression objektumot, hogy az állapota megtekintési állapotban legyen mentve. (Öröklődés forrása DataSourceExpression) |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |
| TrackViewState() |
Nyomon követi az ParameterDataSourceExpression objektum nézetállapot-változásait, hogy a módosítások az objektum objektumában StateBag tárolhatók legyenek. (Öröklődés forrása ParameterDataSourceExpression) |
Explicit interfész-implementációk
| Name | Description |
|---|---|
| IStateManager.IsTrackingViewState |
Egy osztály által implementált érték azt jelzi, hogy egy adatforráskifejezés-objektum követi-e a nézetállapot változásait. (Öröklődés forrása DataSourceExpression) |
| IStateManager.LoadViewState(Object) |
Amikor egy osztály implementálja, betölti az adatforráskifejezés-objektum korábban mentett nézetállapotát. (Öröklődés forrása DataSourceExpression) |
| IStateManager.SaveViewState() |
Amikor egy osztály implementálja, menti az objektum aktuális nézetállapotát DataSourceExpression . (Öröklődés forrása DataSourceExpression) |
| IStateManager.TrackViewState() |
Amikor egy osztály implementálja, nyomon követi az DataSourceExpression objektum állapotváltozásainak megtekintését, hogy a módosítások az StateBag adatforrás-kifejezés objektumában tárolhatók legyenek. (Öröklődés forrása DataSourceExpression) |