Compartir a través de


IScorable<Item,Score> Interfaz

Definición

Permitir la puntuación de los elementos, con una comparación externa de puntuaciones y permitir que el ganador realice alguna acción.

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

Parámetros de tipo

Item
Este parámetro de tipo es contravariante, es decir, puede usar el tipo que haya especificado o cualquier tipo menos derivado. Si desea obtener más información sobre la covarianza y la contravarianza, consulte Covarianza y contravarianza en genéricos.
Score
Este parámetro de tipo es covariante, es decir, puede usar el tipo que haya especificado o cualquier tipo más derivado. Si desea obtener más información sobre la covarianza y la contravarianza, consulte Covarianza y contravarianza en genéricos.
Derivado

Comentarios

Hemos evitado el patrón tradicional "bool TryScore(Item item, object state, out Score score)" para permitir la covarianza del parámetro de tipo genérico Score.

Métodos

DoneAsync(Item, Object, CancellationToken)

El proceso de puntuación se ha completado: elimine los recursos con ámbito.

GetScore(Item, Object)

Obtiene la puntuación de este elemento.

HasScore(Item, Object)

Devuelve si este objetocorable quiere participar en la puntuación de este elemento.

PostAsync(Item, Object, CancellationToken)

Si este valor decorable gana, se llama a este método.

PrepareAsync(Item, CancellationToken)

Realice algún trabajo asincrónico para analizar el elemento y generar algún estado opaco.

Métodos de extensión

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

Proyecta el elemento de un objetocorable mediante una expresión lambda.

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

Proyecta la puntuación de un objetocorable mediante una expresión lambda.

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

Invoque el protocolo de llamada decorable en un solo escorable.

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

Permitir la puntuación de los elementos, con una comparación externa de puntuaciones y permitir que el ganador realice alguna acción.

Se aplica a