Queryable.Intersect 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.
Menghasilkan persimpangan yang ditetapkan dari dua urutan.
Overload
Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>) |
Menghasilkan persimpangan yang ditetapkan dari dua urutan dengan menggunakan perbandingan kesetaraan default untuk membandingkan nilai. |
Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Menghasilkan persimpangan yang ditetapkan dari dua urutan dengan menggunakan yang ditentukan untuk membandingkan IEqualityComparer<T> nilai. |
Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>)
- Sumber:
- Queryable.cs
- Sumber:
- Queryable.cs
- Sumber:
- Queryable.cs
Menghasilkan persimpangan yang ditetapkan dari dua urutan dengan menggunakan perbandingan kesetaraan default untuk membandingkan nilai.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Linq::IQueryable<TSource> ^ Intersect(System::Linq::IQueryable<TSource> ^ source1, System::Collections::Generic::IEnumerable<TSource> ^ source2);
public static System.Linq.IQueryable<TSource> Intersect<TSource> (this System.Linq.IQueryable<TSource> source1, System.Collections.Generic.IEnumerable<TSource> source2);
static member Intersect : System.Linq.IQueryable<'Source> * seq<'Source> -> System.Linq.IQueryable<'Source>
<Extension()>
Public Function Intersect(Of TSource) (source1 As IQueryable(Of TSource), source2 As IEnumerable(Of TSource)) As IQueryable(Of TSource)
Jenis parameter
- TSource
Jenis elemen urutan input.
Parameter
- source1
- IQueryable<TSource>
Urutan yang elemen berbedanya yang juga muncul source2
dikembalikan.
- source2
- IEnumerable<TSource>
Urutan yang elemen berbedanya yang juga muncul dalam urutan pertama dikembalikan.
Mengembalikan
Urutan yang berisi persimpangan yang ditetapkan dari dua urutan.
Pengecualian
source1
atau source2
adalah null
.
Contoh
Contoh kode berikut menunjukkan cara menggunakan Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>) untuk mengembalikan elemen yang muncul di masing-masing dari dua urutan.
int[] id1 = { 44, 26, 92, 30, 71, 38 };
int[] id2 = { 39, 59, 83, 47, 26, 4, 30 };
// Get the numbers that occur in both arrays (id1 and id2).
IEnumerable<int> both = id1.AsQueryable().Intersect(id2);
foreach (int id in both)
Console.WriteLine(id);
/*
This code produces the following output:
26
30
*/
Dim id1() As Integer = {44, 26, 92, 30, 71, 38}
Dim id2() As Integer = {39, 59, 83, 47, 26, 4, 30}
' Get the numbers that occur in both arrays (id1 and id2).
Dim both As IEnumerable(Of Integer) = id1.AsQueryable().Intersect(id2)
Dim output As New System.Text.StringBuilder
For Each id As Integer In both
output.AppendLine(id)
Next
' Display the output.
MsgBox(output.ToString())
' This code produces the following output:
' 26
' 30
Keterangan
Metode ini Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>) menghasilkan MethodCallExpression yang mewakili pemanggilan Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>) dirinya sebagai metode generik yang dibangun. Kemudian meneruskan MethodCallExpression ke CreateQuery<TElement>(Expression) metode dari yang IQueryProvider diwakili oleh Provider properti source1
parameter .
Perilaku kueri yang terjadi sebagai akibat dari menjalankan pohon ekspresi yang mewakili panggilan Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>) tergantung pada implementasi jenis source1
parameter. Perilaku yang diharapkan adalah bahwa semua elemen dalam source1
yang juga ada di source2
dikembalikan.
Berlaku untuk
Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)
- Sumber:
- Queryable.cs
- Sumber:
- Queryable.cs
- Sumber:
- Queryable.cs
Menghasilkan persimpangan yang ditetapkan dari dua urutan dengan menggunakan yang ditentukan untuk membandingkan IEqualityComparer<T> nilai.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Linq::IQueryable<TSource> ^ Intersect(System::Linq::IQueryable<TSource> ^ source1, System::Collections::Generic::IEnumerable<TSource> ^ source2, System::Collections::Generic::IEqualityComparer<TSource> ^ comparer);
public static System.Linq.IQueryable<TSource> Intersect<TSource> (this System.Linq.IQueryable<TSource> source1, System.Collections.Generic.IEnumerable<TSource> source2, System.Collections.Generic.IEqualityComparer<TSource> comparer);
public static System.Linq.IQueryable<TSource> Intersect<TSource> (this System.Linq.IQueryable<TSource> source1, System.Collections.Generic.IEnumerable<TSource> source2, System.Collections.Generic.IEqualityComparer<TSource>? comparer);
static member Intersect : System.Linq.IQueryable<'Source> * seq<'Source> * System.Collections.Generic.IEqualityComparer<'Source> -> System.Linq.IQueryable<'Source>
<Extension()>
Public Function Intersect(Of TSource) (source1 As IQueryable(Of TSource), source2 As IEnumerable(Of TSource), comparer As IEqualityComparer(Of TSource)) As IQueryable(Of TSource)
Jenis parameter
- TSource
Jenis elemen urutan input.
Parameter
- source1
- IQueryable<TSource>
Elemen IQueryable<T> berbeda yang juga muncul dikembalikan source2
.
- source2
- IEnumerable<TSource>
Elemen IEnumerable<T> berbeda yang juga muncul dalam urutan pertama dikembalikan.
- comparer
- IEqualityComparer<TSource>
IEqualityComparer<T> Untuk membandingkan nilai.
Mengembalikan
Yang IQueryable<T> berisi persimpangan yang ditetapkan dari dua urutan.
Pengecualian
source1
atau source2
adalah null
.
Keterangan
Metode ini Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) menghasilkan MethodCallExpression yang mewakili pemanggilan Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) dirinya sebagai metode generik yang dibangun. Kemudian meneruskan MethodCallExpression ke CreateQuery<TElement>(Expression) metode dari yang IQueryProvider diwakili oleh Provider properti source1
parameter .
Perilaku kueri yang terjadi sebagai akibat dari menjalankan pohon ekspresi yang mewakili panggilan Intersect<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) tergantung pada implementasi jenis source1
parameter. Perilaku yang diharapkan adalah bahwa semua elemen dalam source1
yang juga ada di source2
dikembalikan. Parameter comparer
digunakan untuk membandingkan elemen.