Metodo AlterEventDuration(TPayload)
Modifica la durata degli eventi di input. Questo metodo non modifica l'ora di inizio di un evento.
Spazio dei nomi Microsoft.ComplexEventProcessing.Linq
Assembly: Microsoft.ComplexEventProcessing (in Microsoft.ComplexEventProcessing.dll)
Sintassi
public static CepStream<TPayload> AlterEventDuration<TPayload>(
this CepStream<TPayload> source,
Expression<Func<CepEvent<TPayload>, TimeSpan>> eventDurationFunc
)
Parametri di tipo
- TPayload
Tipo di payload dell'evento di input.
Parametri
- source
Tipo: Microsoft.ComplexEventProcessing.Linq. . :: . .CepStream< (Of < ( <'TPayload> ) > ) >
Flusso di input.
- eventDurationFunc
Tipo: System.Linq.Expressions. . :: . .Expression< (Of < ( <'Func< (Of < ( <'CepEvent< (Of < ( <'TPayload> ) > ) >, TimeSpan> ) > ) >> ) > ) >
Espressione che definisce la nuova durata dell'evento.
Valore restituito
Tipo: Microsoft.ComplexEventProcessing.Linq. . :: . .CepStream< (Of < ( <'TPayload> ) > ) >
Flusso con le nuove durate degli eventi.
Nota sull'utilizzo
In Visual Basic e C# questo metodo può essere chiamato come metodo di istanza su qualsiasi oggetto di tipo CepStream< (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 Modifiche dei timestamp.
Esempi
Nell'esempio seguente la durata dell'evento viene impostata su 1 ora.
// set event duration to 1 hour.
var onehour = inputStream.AlterEventDuration(e => TimeSpan.FromHours(1));
Nell'esempio seguente la durata dell'evento viene impostata su un valore pari a due volte la durata corrente.
// double event duration.
var doubled = inputStream.AlterEventDuration(e => (e.EndTime - e.StartTime) * 2);