Share via


Streamable.Sessionize<TKey,TPayload,TSessionKey,TResult> Method

Definition

Convert a stream of start and end sessions to a single per-session stream, where we care about the data in the end session. Sessions are output as point events at the timestamp of the end session.

public static Microsoft.StreamProcessing.IStreamable<TKey,TResult> Sessionize<TKey,TPayload,TSessionKey,TResult> (this Microsoft.StreamProcessing.IStreamable<TKey,TPayload> sessionStream, System.Linq.Expressions.Expression<Func<TPayload,bool>> sessionStartSelector, System.Linq.Expressions.Expression<Func<TPayload,bool>> sessionEndSelector, System.Linq.Expressions.Expression<Func<TPayload,TSessionKey>> sessionKey, System.Linq.Expressions.Expression<Func<TPayload,TPayload,TResult>> sessionResultSelector);
static member Sessionize : Microsoft.StreamProcessing.IStreamable<'Key, 'Payload> * System.Linq.Expressions.Expression<Func<'Payload, bool>> * System.Linq.Expressions.Expression<Func<'Payload, bool>> * System.Linq.Expressions.Expression<Func<'Payload, 'SessionKey>> * System.Linq.Expressions.Expression<Func<'Payload, 'Payload, 'Result>> -> Microsoft.StreamProcessing.IStreamable<'Key, 'Result>
<Extension()>
Public Function Sessionize(Of TKey, TPayload, TSessionKey, TResult) (sessionStream As IStreamable(Of TKey, TPayload), sessionStartSelector As Expression(Of Func(Of TPayload, Boolean)), sessionEndSelector As Expression(Of Func(Of TPayload, Boolean)), sessionKey As Expression(Of Func(Of TPayload, TSessionKey)), sessionResultSelector As Expression(Of Func(Of TPayload, TPayload, TResult))) As IStreamable(Of TKey, TResult)

Type Parameters

TKey
TPayload
TSessionKey
TResult

Parameters

sessionStartSelector
Expression<Func<TPayload,Boolean>>
sessionEndSelector
Expression<Func<TPayload,Boolean>>
sessionKey
Expression<Func<TPayload,TSessionKey>>
sessionResultSelector
Expression<Func<TPayload,TPayload,TResult>>

Returns

IStreamable<TKey,TResult>

Applies to