Queryable.SequenceEqual<TSource> Method (IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)
Determines whether two sequences are equal by using a specified IEqualityComparer<T> to compare elements.
Assembly: System.Core (in System.Core.dll)
public static bool SequenceEqual<TSource>( this IQueryable<TSource> source1, IEnumerable<TSource> source2, IEqualityComparer<TSource> comparer )
The type of the elements of the input sequences.
- Type: System.Linq.IQueryable<>
An IQueryable<T> whose elements to compare to those of source2.
- Type: System.Collections.Generic.IEnumerable<>
An IEnumerable<T> whose elements to compare to those of the first sequence.
Return ValueType: System.Boolean
true if the two source sequences are of equal length and their corresponding elements compare equal; otherwise, false.
Usage NoteIn Visual Basic and C#, you can call this method as an instance method on any object of type IQueryable<>. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).
The method generates a MethodCallExpression that represents calling itself as a constructed generic method. It then passes the MethodCallExpression to the Execute<TResult>(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 depends on the implementation of the type of the source1 parameter. The expected behavior is that it determines if the two source sequences are equal by using comparer to compare elements.