MethodExpression Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menyediakan cara untuk menentukan kueri LINQ kustom yang ditentukan dalam metode.
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
- Warisan
Contoh
Contoh berikut menunjukkan cara mencari bidang ListPrice dari tabel Produk di database AdventureWorks untuk produk yang memiliki harga daftar 400 atau lebih. Contoh ini memperlihatkan cara membuat kueri LINQ kustom dalam metode dalam kode halaman dan cara memanggil metode dalam QueryExtender kontrol.
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;
}
Contoh berikut menunjukkan cara memanggil metode di halaman.
<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>
Keterangan
Kontrol QueryExtender mendukung kueri LINQ kustom. Anda dapat menentukan kueri LINQ kustom dalam metode dan menggunakan MethodExpression opsi filter untuk memanggil kueri dalam QueryExtender kontrol.
Metode yang berisi kueri LINQ kustom harus memenuhi kriteria berikut:
Metode harus statis (
Shareddalam Visual Basic). Parameter pertama harus berupa IQueryable<T> objek atau IEnumerable<T> . Metode ini dapat memiliki lebih dari satu parameter.Nilai pengembalian tidak dapat mengubah IQueryable<T> jenis atau IEnumerable<T> yang dikueri.
Pencarian MethodExpression metode yang berisi kueri dalam urutan berikut:
TypeName Jika properti ditentukan dalam QueryExtender kontrol, MethodExpression objek mencari metode dalam jenis yang ditentukan.
Jika sumber data mengimplementasikan IDynamicDataSource, metode mencari metode pada jenis konteks (DataContext atau ObjectContext objek.)
Metode ini mencari metode dalam kontrol templat, di kelas dasar untuk halaman, atau dalam kontrol pengguna.
Kelas MethodExpression ini seperti CustomExpression kelas kecuali bahwa ekspresi metode dijalankan sebagai respons terhadap panggilan metode, dan ekspresi kustom dijalankan sebagai respons terhadap peristiwa.
Konstruktor
| Nama | Deskripsi |
|---|---|
| MethodExpression() |
Menginisialisasi instans baru dari kelas MethodExpression. |
Properti
| Nama | Deskripsi |
|---|---|
| Context |
Mendapatkan instans HttpContext kontrol pemilik. (Diperoleh dari DataSourceExpression) |
| DataSource |
Mendapatkan objek sumber data yang terkait dengan kontrol pemilik. (Diperoleh dari DataSourceExpression) |
| IgnoreIfNotFound |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah ekspresi harus diabaikan. |
| IsTrackingViewState |
Mendapatkan nilai yang menunjukkan apakah objek ekspresi sumber data melacak perubahan status tampilannya. (Diperoleh dari DataSourceExpression) |
| MethodName |
Mendapatkan atau mengatur nama metode yang berisi kueri LINQ kustom. |
| Owner |
Mendapatkan kontrol pemilik. (Diperoleh dari DataSourceExpression) |
| Parameters |
Mendapatkan parameter yang terkait dengan objek ini DataSourceExpression . (Diperoleh dari ParameterDataSourceExpression) |
| TypeName |
Mendapatkan atau mengatur kelas yang metodenya berisi kueri kustom. |
| ViewState |
Mendapatkan instans StateBag kelas yang berisi informasi status tampilan saat ini. (Diperoleh dari DataSourceExpression) |
Metode
| Nama | Deskripsi |
|---|---|
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetQueryable(IQueryable) |
Menyelesaikan ekspresi dengan menggunakan objek yang ditentukan IQueryable . |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| LoadViewState(Object) |
Memuat status nilai dalam ParameterDataSourceExpression objek yang harus dipertahankan. (Diperoleh dari ParameterDataSourceExpression) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| SaveViewState() |
Menyimpan status ParameterDataSourceExpression tampilan objek saat ini. (Diperoleh dari ParameterDataSourceExpression) |
| SetContext(Control, HttpContext, IQueryableDataSource) |
Menjalankan ekspresi dengan menggunakan kontrol pemilik, konteks, dan sumber data yang ditentukan. (Diperoleh dari ParameterDataSourceExpression) |
| SetDirty() |
DataSourceExpression Menandai objek sehingga statusnya akan disimpan dalam status tampilan. (Diperoleh dari DataSourceExpression) |
| ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
| TrackViewState() |
Melacak perubahan ParameterDataSourceExpression status tampilan objek sehingga perubahan dapat disimpan dalam StateBag objek untuk objek. (Diperoleh dari ParameterDataSourceExpression) |
Implementasi Antarmuka Eksplisit
| Nama | Deskripsi |
|---|---|
| IStateManager.IsTrackingViewState |
Saat diimplementasikan oleh kelas, mendapatkan nilai yang menunjukkan apakah objek ekspresi sumber data melacak perubahan status tampilannya. (Diperoleh dari DataSourceExpression) |
| IStateManager.LoadViewState(Object) |
Saat diimplementasikan oleh kelas, memuat status tampilan objek ekspresi sumber data yang disimpan sebelumnya. (Diperoleh dari DataSourceExpression) |
| IStateManager.SaveViewState() |
Saat diimplementasikan oleh kelas, menyimpan status DataSourceExpression tampilan objek saat ini. (Diperoleh dari DataSourceExpression) |
| IStateManager.TrackViewState() |
Saat diimplementasikan oleh kelas, melacak perubahan DataSourceExpression status tampilan objek sehingga perubahan dapat disimpan dalam StateBag objek untuk objek ekspresi sumber data. (Diperoleh dari DataSourceExpression) |