Metodo Take(TPayload) (CepOrderedStream(TPayload), UInt32)
Dato un flusso ordinato, seleziona un determinato numero di eventi da ogni finestra.
Spazio dei nomi Microsoft.ComplexEventProcessing.Linq
Assembly: Microsoft.ComplexEventProcessing (in Microsoft.ComplexEventProcessing.dll)
Sintassi
public static CepStream<TPayload> Take<TPayload>(
this CepOrderedStream<TPayload> source,
uint numberOfElements
)
Parametri di tipo
- TPayload
Tipo di payload di eventi di input.
Parametri
- source
Tipo: Microsoft.ComplexEventProcessing.Linq. . :: . .CepOrderedStream< (Of < ( <'TPayload> ) > ) >
Flusso di input.
- numberOfElements
Tipo: System. . :: . .UInt32
Numero di elementi da selezionare da ogni finestra.
Valore restituito
Tipo: Microsoft.ComplexEventProcessing.Linq. . :: . .CepStream< (Of < ( <'TPayload> ) > ) >
Flusso con un determinato numero di eventi selezionati da ogni finestra.
Nota sull'utilizzo
In Visual Basic e C# questo metodo può essere chiamato come metodo di istanza su qualsiasi oggetto di tipo CepOrderedStream< (Of < ( <'TPayload> ) > ) >. Quando si utilizza la sintassi del metodo di istanza per chiamare questo metodo, omettere il primo parametro. Per ulteriori informazioni, vedere https://msdn.microsoft.com/it-it/library/bb384936(v=sql.105) o https://msdn.microsoft.com/it-it/library/bb383977(v=sql.105).
Osservazioni
Per ulteriori informazioni, vedere TopK.
Esempi
Nell'esempio seguente vengono considerati i primi cinque eventi di ogni finestra snapshot definiti per il flusso di input inputStream e viene generato un nuovo flusso di eventi. Gli eventi di ogni finestra vengono disposti in ordine crescente di valore nei campi payload e.f combinati con l'ordine decrescente di valore nel campo payload e.i.
// Assuming the following input event type for inputStream:
public class MyPayload
{
public int f;
public int i;
}
var topfive = (from window in inputStream.Snapshot(SnapshotWindowOutputPolicy.Clip)
from e in window
orderby e.f ascending, e.i descending
select e).Take(5);