Udostępnij za pośrednictwem


IScorable<Item,Score> Interfejs

Definicja

Zezwalaj na ocenianie elementów z zewnętrznym porównaniem wyników i umożliwienie zwycięzcy podjęcia pewnych działań.

public interface IScorable<in Item,out Score>
type IScorable<'Item, 'Score> = interface
Public Interface IScorable(Of In Item, Out Score)

Parametry typu

Item
Ten parametr typu jest kontrawariantny. Oznacza to, że możesz użyć typu, który został przez Ciebie określony, lub dowolnego typu, który jest mniej pochodny. Aby uzyskać więcej informacji o kowariancji i kontrawariancji, zobacz Kowariancja i kontrawariancja w typach ogólnych.
Score
Ten parametr typu jest kowariantny. Oznacza to, że możesz użyć typu, który został przez Ciebie określony, lub dowolnego typu, który jest bardziej pochodny. Aby uzyskać więcej informacji o kowariancji i kontrawariancji, zobacz Kowariancja i kontrawariancja w typach ogólnych.
Pochodne

Uwagi

Uniknęliśmy tradycyjnego wzorca "bool TryScore(item, object state, out Score score)" (Wynik wyniku)" w celu umożliwienia wariancji parametru typu ogólnego Score (Wynik ogólny typu).

Metody

DoneAsync(Item, Object, CancellationToken)

Ukończono proces oceniania — usuwanie wszystkich zasobów o określonym zakresie.

GetScore(Item, Object)

Pobiera wynik dla tego elementu.

HasScore(Item, Object)

Zwraca, czy ten scorable chce uczestniczyć w ocenianiu tego elementu.

PostAsync(Item, Object, CancellationToken)

Jeśli to scorable wygrywa, ta metoda jest wywoływana.

PrepareAsync(Item, CancellationToken)

Wykonaj pewną asynchroniczną pracę, aby przeanalizować element i wygenerować pewien nieprzezroczysty stan.

Metody rozszerzania

SelectItem<SourceItem,TargetItem,Score>(IScorable<TargetItem,Score>, Func<SourceItem,TargetItem>)

Zaprojektuj element scorable przy użyciu wyrażenia lambda.

SelectScore<Item,SourceScore,TargetScore>(IScorable<Item,SourceScore>, Func<Item,SourceScore,TargetScore>)

Przeprojektuj wynik scorable przy użyciu wyrażenia lambda.

TryPostAsync<Item,Score>(IScorable<Item,Score>, Item, CancellationToken)

Wywołaj protokół wywoływania scorable względem pojedynczego scorable.

WhereScore<Item,Score>(IScorable<Item,Score>, Func<Item,Score,Boolean>)

Zezwalaj na ocenianie elementów z zewnętrznym porównaniem wyników i umożliwienie zwycięzcy podjęcia pewnych działań.

Dotyczy