AlterEventLifetime(TPayload) Método
Cambia la duración de los eventos del flujo. Este método puede cambiar la hora de inicio y la hora de finalización de un evento.
Espacio de nombres: Microsoft.ComplexEventProcessing.Linq
Ensamblado: Microsoft.ComplexEventProcessing (en Microsoft.ComplexEventProcessing.dll)
Sintaxis
public static CepStream<TPayload> AlterEventLifetime<TPayload>(
this CepStream<TPayload> source,
Expression<Func<CepEvent, DateTime>> startTimeFunc,
Expression<Func<CepEvent<TPayload>, TimeSpan>> lifeTimeFunc
)
Parámetros de tipo
- TPayload
El tipo de carga de evento de la entrada.
Parámetros
- source
Tipo: Microsoft.ComplexEventProcessing.Linq. . :: . .CepStream< (Of < ( <'TPayload> ) > ) >
Flujo de entrada.
- startTimeFunc
Tipo: System.Linq.Expressions. . :: . .Expression< (Of < ( <'Func< (Of < ( <'CepEvent, DateTime> ) > ) >> ) > ) >
Función que define la nueva hora de inicio del evento para un evento especificado.
- lifeTimeFunc
Tipo: System.Linq.Expressions. . :: . .Expression< (Of < ( <'Func< (Of < ( <'CepEvent< (Of < ( <'TPayload> ) > ) >, TimeSpan> ) > ) >> ) > ) >
Función que define la nueva duración del evento para un evento especificado.
Valor devuelto
Tipo: Microsoft.ComplexEventProcessing.Linq. . :: . .CepStream< (Of < ( <'TPayload> ) > ) >
Nuevo flujo con duraciones de evento cambiadas.
Nota de uso
En Visual Basic y C#, puede llamar a este método como un método de instancia en cualquier objeto del tipo CepStream< (Of < ( <'TPayload> ) > ) >. Cuando utilice la sintaxis del método de instancia para llamar a este método, sáltese este parámetro primero. Para obtener más información, vea https://msdn.microsoft.com/es-es/library/bb384936(v=sql.105) o https://msdn.microsoft.com/es-es/library/bb383977(v=sql.105).
Comentarios
Para obtener más información, vea Modificaciones de marca de tiempo.
Ejemplos
En el siguiente ejemplo se atrasa la hora del evento en 1 minuto, pero no se cambia la hora de finalización del evento (se agrega, por tanto, un minuto adicional a la duración original) cuando se especifica la nueva duración como segundo parámetro.
// shift event 1 minute into the past, but leave the end time (event duration) unchanged.
var newStream = inputStream.AlterEventLifetime(e => e.StartTime - TimeSpan.FromMinutes(1),
e => e.EndTime - e.StartTime + TimeSpan.FromMinutes(1));