Class Distinct<TInput>

Inheritance
object
DataFlowTransformation<TInput, TInput>
Distinct<TInput>
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: ETLBox.DataFlow
Assembly: ETLBox.dll
Syntax
    public class Distinct<TInput> : DataFlowTransformation<TInput, TInput>, ILoggableTask, IDataFlowLogging, IDataFlowTransformation<TInput, TInput>, IDataFlowSource<TInput>, IDataFlowSource, IDataFlowDestination<TInput>, IDataFlowDestination, IDataFlowComponent
Type Parameters
NameDescription
TInput

Constructors

Distinct()

Declaration
    public Distinct()

Properties

DistinctColumns

Defines the property names that should be used to determine the uniqueness of an object.

Declaration
    public ICollection<DistinctColumn> DistinctColumns { get; set; }
Property Value
TypeDescription
System.Collections.Generic.ICollection<T><DistinctColumn>

DuplicatesSourceBlock

Declaration
    public ISourceBlock<TInput> DuplicatesSourceBlock { get; }
Property Value
TypeDescription
ISourceBlock<><TInput>

SourceBlock

SourceBlock from the underlying TPL.Dataflow which is used as output buffer for the component.

Declaration
    public override ISourceBlock<TInput> SourceBlock { get; }
Property Value
TypeDescription
ISourceBlock<><TInput>
Overrides
ETLBox.DataFlow.DataFlowSource<TInput>.SourceBlock

TargetBlock

TargetBlock from the underlying TPL.Dataflow which is used as input buffer for the component.

Declaration
    public override ITargetBlock<TInput> TargetBlock { get; }
Property Value
TypeDescription
ITargetBlock<><TInput>
Overrides
ETLBox.DataFlow.DataFlowTransformation<TInput, TInput>.TargetBlock

TaskName

A name to identify the task or component. Every component or task comes with a default name that can be overwritten.

Declaration
    public override string TaskName { get; set; }
Property Value
TypeDescription
string
Overrides

Methods

CheckParameter()

Declaration
    protected override void CheckParameter()
Overrides

CleanUpOnFaulted(Exception)

Declaration
    protected override void CleanUpOnFaulted(Exception e)
Parameters
TypeNameDescription
System.Exceptione
Overrides

CleanUpOnSuccess()

Declaration
    protected override void CleanUpOnSuccess()
Overrides

InitComponent()

Declaration
    protected override void InitComponent()
Overrides

InitParameter()

Declaration
    protected override void InitParameter()
Overrides

LinkDuplicatesTo(IDataFlowDestination<TInput>, Predicate<TInput>, Predicate<TInput>)

Links the current block to another transformation or destination, which will only receive the detected duplicates.

Declaration
    public virtual IDataFlowSource<TInput> LinkDuplicatesTo(IDataFlowDestination<TInput> target, Predicate<TInput> rowsToKeep, Predicate<TInput> rowsIntoVoid)
Parameters
TypeNameDescription
IDataFlowDestination<TInput>target

Transformation or destination that the block is linked to.

System.Predicate<T><TInput>rowsToKeep

Only rows that evaluate to true are send to the connected target

System.Predicate<T><TInput>rowsIntoVoid

Rows that are evaluate to true will be discarded

Returns
TypeDescription
IDataFlowSource<TInput>

The linked component.

LinkDuplicatesTo(IDataFlowDestination<TInput>, Predicate<TInput>)

Links the current block to another transformation or destination, which will only receive the detected duplicates.

Declaration
    public virtual IDataFlowSource<TInput> LinkDuplicatesTo(IDataFlowDestination<TInput> target, Predicate<TInput> rowsToKeep)
Parameters
TypeNameDescription
IDataFlowDestination<TInput>target

Transformation or destination that the block is linked to.

System.Predicate<T><TInput>rowsToKeep

Only rows that evaluate to true are send to the connected target

Returns
TypeDescription
IDataFlowSource<TInput>

The linked component.

LinkDuplicatesTo(IDataFlowDestination<TInput>)

Links the current block to another transformation or destination, which will only receive the detected duplicates.

Declaration
    public IDataFlowSource<TInput> LinkDuplicatesTo(IDataFlowDestination<TInput> target)
Parameters
TypeNameDescription
IDataFlowDestination<TInput>target

Transformation or destination that the block is linked to.

Returns
TypeDescription
IDataFlowSource<TInput>

The linked component.

PrepareParameter()

Declaration
    protected override void PrepareParameter()
Overrides

Implements