DbExpressionBuilder.SelectMany Metode
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.
Overload
| SelectMany(DbExpression, Func<DbExpression,DbExpression>) |
Membuat baru DbApplyExpression yang mengevaluasi ekspresi yang diberikan |
| SelectMany<TSelector>(DbExpression, Func<DbExpression,DbExpression>, Func<DbExpression,DbExpression,TSelector>) |
Membuat baru DbApplyExpression yang mengevaluasi ekspresi yang diberikan |
SelectMany(DbExpression, Func<DbExpression,DbExpression>)
Membuat baru DbApplyExpression yang mengevaluasi ekspresi yang diberikan apply sekali untuk setiap elemen dari set input tertentu, menghasilkan kumpulan baris dengan input yang sesuai dan menerapkan kolom. Baris yang apply dievaluasi ke set kosong tidak disertakan.
DbProjectExpression kemudian dibuat yang memilih apply kolom dari setiap baris, menghasilkan kumpulan apply hasil secara keseluruhan.
public:
[System::Runtime::CompilerServices::Extension]
static System::Data::Common::CommandTrees::DbProjectExpression ^ SelectMany(System::Data::Common::CommandTrees::DbExpression ^ source, Func<System::Data::Common::CommandTrees::DbExpression ^, System::Data::Common::CommandTrees::DbExpression ^> ^ apply);
public static System.Data.Common.CommandTrees.DbProjectExpression SelectMany (this System.Data.Common.CommandTrees.DbExpression source, Func<System.Data.Common.CommandTrees.DbExpression,System.Data.Common.CommandTrees.DbExpression> apply);
static member SelectMany : System.Data.Common.CommandTrees.DbExpression * Func<System.Data.Common.CommandTrees.DbExpression, System.Data.Common.CommandTrees.DbExpression> -> System.Data.Common.CommandTrees.DbProjectExpression
<Extension()>
Public Function SelectMany (source As DbExpression, apply As Func(Of DbExpression, DbExpression)) As DbProjectExpression
Parameter
- source
- DbExpression
DbExpression yang menentukan set input.
- apply
- Func<DbExpression,DbExpression>
Metode yang mewakili logika untuk mengevaluasi sekali untuk setiap anggota set input.
Mengembalikan
DbProjectExpression baru yang memilih kolom terapkan dari DbApplyExpression baru dengan input yang ditentukan dan menerapkan pengikatan dan DbExpressionKind CrossApply.
Pengecualian
source atau apply adalah null.
-atau-
Ekspresi yang dihasilkan oleh apply null.
source tidak memiliki tipe hasil koleksi.
-atau-
Ekspresi yang dihasilkan oleh apply tidak memiliki jenis koleksi.
Berlaku untuk
SelectMany<TSelector>(DbExpression, Func<DbExpression,DbExpression>, Func<DbExpression,DbExpression,TSelector>)
Membuat baru DbApplyExpression yang mengevaluasi ekspresi yang diberikan apply sekali untuk setiap elemen dari set input tertentu, menghasilkan kumpulan baris dengan input yang sesuai dan menerapkan kolom. Baris yang apply dievaluasi ke set kosong tidak disertakan.
DbProjectExpression kemudian dibuat yang memilih yang ditentukan selector di setiap baris, menghasilkan kumpulan hasil secara keseluruhan.
public:
generic <typename TSelector>
[System::Runtime::CompilerServices::Extension]
static System::Data::Common::CommandTrees::DbProjectExpression ^ SelectMany(System::Data::Common::CommandTrees::DbExpression ^ source, Func<System::Data::Common::CommandTrees::DbExpression ^, System::Data::Common::CommandTrees::DbExpression ^> ^ apply, Func<System::Data::Common::CommandTrees::DbExpression ^, System::Data::Common::CommandTrees::DbExpression ^, TSelector> ^ selector);
public static System.Data.Common.CommandTrees.DbProjectExpression SelectMany<TSelector> (this System.Data.Common.CommandTrees.DbExpression source, Func<System.Data.Common.CommandTrees.DbExpression,System.Data.Common.CommandTrees.DbExpression> apply, Func<System.Data.Common.CommandTrees.DbExpression,System.Data.Common.CommandTrees.DbExpression,TSelector> selector);
static member SelectMany : System.Data.Common.CommandTrees.DbExpression * Func<System.Data.Common.CommandTrees.DbExpression, System.Data.Common.CommandTrees.DbExpression> * Func<System.Data.Common.CommandTrees.DbExpression, System.Data.Common.CommandTrees.DbExpression, 'Selector> -> System.Data.Common.CommandTrees.DbProjectExpression
<Extension()>
Public Function SelectMany(Of TSelector) (source As DbExpression, apply As Func(Of DbExpression, DbExpression), selector As Func(Of DbExpression, DbExpression, TSelector)) As DbProjectExpression
Jenis parameter
- TSelector
Jenis hasil metode dari selector.
Parameter
- source
- DbExpression
DbExpression yang menentukan set input.
- apply
- Func<DbExpression,DbExpression>
Metode yang mewakili logika untuk mengevaluasi sekali untuk setiap anggota set input.
- selector
- Func<DbExpression,DbExpression,TSelector>
Metode yang menentukan bagaimana elemen kumpulan hasil harus diturunkan mengingat elemen input dan menerapkan set. Metode ini harus menghasilkan instans jenis yang kompatibel dengan SelectMany dan dapat diselesaikan menjadi DbExpression. Persyaratan kompatibilitas untuk TSelector dijelaskan dalam keterangan.
Mengembalikan
DbProjectExpression baru yang memilih hasil pemilih yang diberikan dari DbApplyExpression baru dengan input yang ditentukan dan menerapkan pengikatan dan DbExpressionKind CrossApply.
Pengecualian
source, apply atau selector null.
-atau-
Ekspresi yang dihasilkan oleh apply null.
-atau-
Hasilnya selector adalah null pada konversi ke DbExpression.
source tidak memiliki tipe hasil koleksi.
-atau-
Ekspresi yang dihasilkan oleh apply tidak memiliki jenis koleksi. tidak memiliki tipe koleksi.
Keterangan
Agar kompatibel dengan SelectMany, TSelector harus berasal dari DbExpression, atau harus merupakan jenis anonim dengan properti turunan DbExpression. Berikut ini adalah contoh jenis yang didukung untuk TSelector:
source.SelectMany(x => x.Property("RelatedCollection"), (source, apply) => apply.Property("Name"))
(TSelector adalah DbPropertyExpression).
source.SelectMany(x => x.Property("RelatedCollection"), (source, apply) => new { SourceName = source.Property("Name"), RelatedName = apply.Property("Name") })
(TSelector adalah jenis anonim dengan properti turunan DbExpression).