Skip to content

M_CodeJam_Collections_EnumerableExtensions_ExceptBy__2_1

andrewvk edited this page Jun 23, 2016 · 8 revisions

EnumerableExtensions.ExceptBy(TSource, TKey) Method (IEnumerable(TSource), IEnumerable(TSource), Func(TSource, TKey), IEqualityComparer(TKey))

Produces the set difference of two sequences by using the specified key and IEqualityComparer(T) to compare values.

Namespace: CodeJam.Collections
Assembly: CodeJam (in CodeJam.dll) Version: 1.0.0.0 (1.0.0.0)

Syntax

C#

public static IEnumerable<TSource> ExceptBy<TSource, TKey>(
	this IEnumerable<TSource> first,
	IEnumerable<TSource> second,
	Func<TSource, TKey> keySelector,
	IEqualityComparer<TKey> comparer
)

VB

<ExtensionAttribute>
Public Shared Function ExceptBy(Of TSource, TKey) ( 
	first As IEnumerable(Of TSource),
	second As IEnumerable(Of TSource),
	keySelector As Func(Of TSource, TKey),
	comparer As IEqualityComparer(Of TKey)
) As IEnumerable(Of TSource)

F#

[<ExtensionAttribute>]
static member ExceptBy : 
        first : IEnumerable<'TSource> * 
        second : IEnumerable<'TSource> * 
        keySelector : Func<'TSource, 'TKey> * 
        comparer : IEqualityComparer<'TKey> -> IEnumerable<'TSource> 

Parameters

 

first
Type: System.Collections.Generic.IEnumerable(TSource)
An IEnumerable(T) whose elements that are not also in second will be returned.
second
Type: System.Collections.Generic.IEnumerable(TSource)
An IEnumerable(T) whose elements that also occur in the first sequence will cause those elements to be removed from the returned sequence.
keySelector
Type: System.Func(TSource, TKey)
A function to extract the key for each element.
comparer
Type: System.Collections.Generic.IEqualityComparer(TKey)
An IEqualityComparer(T) to compare values.

Type Parameters

 

TSource
TKey

Return Value

Type: IEnumerable(TSource)
A sequence that contains the set difference of the elements of two sequences.

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. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).

See Also

Reference

EnumerableExtensions Class
ExceptBy Overload
CodeJam.Collections Namespace

Clone this wiki locally