Enumerable::SequenceEqual<TSource> Method (IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)
Determines whether two sequences are equal by comparing their elements by using a specified IEqualityComparer<T>.
Namespace: System.Linq
Assembly: System.Core (in System.Core.dll)
Type Parameters
- TSource
The type of the elements of the input sequences.
Parameters
- first
- Type: System.Collections.Generic::IEnumerable<TSource>
An IEnumerable<T> to compare to second.
- second
- Type: System.Collections.Generic::IEnumerable<TSource>
An IEnumerable<T> to compare to the first sequence.
- comparer
- Type: System.Collections.Generic::IEqualityComparer<TSource>
An IEqualityComparer<T> to use to compare elements.
Return Value
Type: System::Booleantrue if the two source sequences are of equal length and their corresponding elements compare equal according to comparer; otherwise, false.
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type IEnumerable<TSource>. When you use instance method syntax to call this method, omit the first parameter.| Exception | Condition |
|---|---|
| ArgumentNullException | first or second is nullptr. |
| InvalidOperationException | source has more than one element. |
The SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) method enumerates the two source sequences in parallel and compares corresponding elements by using the specified IEqualityComparer<T>. If comparer is nullptr, the default equality comparer, Default, is used to compare elements.
The following example shows how to implement an equality comparer that can be used in the SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) method.
After you implement this comparer, you can use sequences of Product objects in the SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) method, as shown in the following example.
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.