Queryable.Intersect<'TSource> Method (IQueryable<'TSource>, IEnumerable<'TSource>)
Produces the set intersection of two sequences by using the default equality comparer to compare values.
Assembly: System.Core (in System.Core.dll)
static member Intersect<'TSource> : source1:IQueryable<'TSource> * source2:IEnumerable<'TSource> -> IQueryable<'TSource>
Parameters
- source1
-
Type:
System.Linq.IQueryable<'TSource>
A sequence whose distinct elements that also appear in source2 are returned.
- source2
-
Type:
System.Collections.Generic.IEnumerable<'TSource>
A sequence whose distinct elements that also appear in the first sequence are returned.
Return Value
Type: System.Linq.IQueryable<'TSource>A sequence that contains the set intersection of the two sequences.
Type Parameters
- TSource
The type of the elements of the input sequences.
| Exception | Condition |
|---|---|
| ArgumentNullException | source1 or source2 is null. |
The Intersect<'TSource>(IQueryable<'TSource>, IEnumerable<'TSource>) method generates a MethodCallExpression that represents calling Intersect<'TSource>(IQueryable<'TSource>, IEnumerable<'TSource>) itself as a constructed generic method. It then passes the MethodCallExpression to the CreateQuery<'TElement>(Expression) method of the IQueryProvider represented by the Provider property of the source1 parameter.
The query behavior that occurs as a result of executing an expression tree that represents calling Intersect<'TSource>(IQueryable<'TSource>, IEnumerable<'TSource>) depends on the implementation of the type of the source1 parameter. The expected behavior is that all the elements in source1 that are also in source2 are returned.
Available since 8
.NET Framework
Available since 3.5
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.1
Windows Phone
Available since 8.1