Observable.GroupJoin<TLeft、TRight、TLeftDuration、TRightDuration、TResult> 方法

根据重叠持续时间关联两个序列的元素,并将结果分组。

Namespace:System.Reactive.Linq
装配: System.Reactive.dll) 中的 System.Reactive (

语法

'Declaration
<ExtensionAttribute> _
Public Shared Function GroupJoin(Of TLeft, TRight, TLeftDuration, TRightDuration, TResult) ( _
    left As IObservable(Of TLeft), _
    right As IObservable(Of TRight), _
    leftDurationSelector As Func(Of TLeft, IObservable(Of TLeftDuration)), _
    rightDurationSelector As Func(Of TRight, IObservable(Of TRightDuration)), _
    resultSelector As Func(Of TLeft, IObservable(Of TRight), TResult) _
) As IObservable(Of TResult)
'Usage
Dim left As IObservable(Of TLeft)
Dim right As IObservable(Of TRight)
Dim leftDurationSelector As Func(Of TLeft, IObservable(Of TLeftDuration))
Dim rightDurationSelector As Func(Of TRight, IObservable(Of TRightDuration))
Dim resultSelector As Func(Of TLeft, IObservable(Of TRight), TResult)
Dim returnValue As IObservable(Of TResult)

returnValue = left.GroupJoin(right, _
    leftDurationSelector, rightDurationSelector, _
    resultSelector)
public static IObservable<TResult> GroupJoin<TLeft, TRight, TLeftDuration, TRightDuration, TResult>(
    this IObservable<TLeft> left,
    IObservable<TRight> right,
    Func<TLeft, IObservable<TLeftDuration>> leftDurationSelector,
    Func<TRight, IObservable<TRightDuration>> rightDurationSelector,
    Func<TLeft, IObservable<TRight>, TResult> resultSelector
)
[ExtensionAttribute]
public:
generic<typename TLeft, typename TRight, typename TLeftDuration, typename TRightDuration, typename TResult>
static IObservable<TResult>^ GroupJoin(
    IObservable<TLeft>^ left, 
    IObservable<TRight>^ right, 
    Func<TLeft, IObservable<TLeftDuration>^>^ leftDurationSelector, 
    Func<TRight, IObservable<TRightDuration>^>^ rightDurationSelector, 
    Func<TLeft, IObservable<TRight>^, TResult>^ resultSelector
)
static member GroupJoin : 
        left:IObservable<'TLeft> * 
        right:IObservable<'TRight> * 
        leftDurationSelector:Func<'TLeft, IObservable<'TLeftDuration>> * 
        rightDurationSelector:Func<'TRight, IObservable<'TRightDuration>> * 
        resultSelector:Func<'TLeft, IObservable<'TRight>, 'TResult> -> IObservable<'TResult> 
JScript does not support generic types and methods.

类型参数

  • TLeft
    左的类型。
  • TRight
    右的类型。
  • TLeftDuration
    左持续时间的类型。
  • TRightDuration
    正确的持续时间的类型。
  • TResult
    结果的类型。

parameters

  • 左侧
    类型: System.IObservable<TLeft>
    要联接其元素的左侧可观测序列。
  • leftDurationSelector
    类型: System.Func<TLeft、 IObservable<TLeftDuration>>
    一个函数,用于选择左侧可观测序列的每个元素的持续时间,用于确定重叠。
  • rightDurationSelector
    类型: System.Func<TRight、 IObservable<TRightDuration>>
    一个函数,用于选择正确可观测序列中每个元素的持续时间,用于确定重叠。
  • resultSelector
    类型: System.Func<TLeft、 IObservable<TRight>、TResult>
    调用的函数,用于计算左侧序列中具有右侧可观测序列中重叠元素的任何元素的结果元素。

返回值

类型: System.IObservable<TResult>
一个可观测序列,其中包含从具有重叠持续时间的源元素计算的结果元素。

使用说明

在 Visual Basic 和 C# 中,可以将此方法作为 IObservable<TLeft> 类型的任何对象的实例方法调用。 当使用实例方法语法调用此方法时,请省略第一个参数。 有关详细信息,请参阅

另请参阅

参考

可观测类

System.Reactive.Linq 命名空间