,System.Linq.Expressions.Expression{System.Func{--0,--1}},System.Linq.Expressions.Expression{System.Func{System.Reactive.Linq.IGroupedObservable{--1,--0},System.IObservable{--2}}})} ,System.Linq.Expressions.Expression{System.Func{--0,--1}},System.Linq.Expressions.Expression{System.Func{System.Reactive.Linq.IGroupedObservable{--1,--0},System.IObservable{--2}}},System.Int32)} ,System.Linq.Expressions.Expression{System.Func{--0,--1}},System.Linq.Expressions.Expression{System.Func{System.Reactive.Linq.IGroupedObservable{--1,--0},System.IObservable{--2}}},System.Int32,System.Collections.Generic.IEqualityComparer{--1})} ,System.Linq.Expressions.Expression{System.Func{--0,--1}},System.Linq.Expressions.Expression{System.Func{System.Reactive.Linq.IGroupedObservable{--1,--0},System.IObservable{--2}}},System.Collections.Generic.IEqualityComparer{--1})} ,System.Linq.Expressions.Expression{System.Func{--0,--1}},System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{System.Reactive.Linq.IGroupedObservable{--1,--2},System.IObservable{--3}}})} ,System.Linq.Expressions.Expression{System.Func{--0,--1}},System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{System.Reactive.Linq.IGroupedObservable{--1,--2},System.IObservable{--3}}},System.Int32)} ,System.Linq.Expressions.Expression{System.Func{--0,--1}},System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{System.Reactive.Linq.IGroupedObservable{--1,--2},System.IObservable{--3}}},System.Int32,System.Collections.Generic.IEqualityComparer{--1})} ,System.Linq.Expressions.Expression{System.Func{--0,--1}},System.Linq.Expressions.Expression{System.Func{--0,--2}},System.Linq.Expressions.Expression{System.Func{System.Reactive.Linq.IGroupedObservable{--1,--2},System.IObservable{--3}}},System.Collections.Generic.IEqualityComparer{--1})}
Qbservable.GroupByUntil(IQbservable, Expression>, Expression, IObservable>>) method¶
Defined in
Type: Qbservable
Namespace: System.Reactive.Linq
Assembly: System.Reactive.dll
Applies to
netstandard2.0
Overloads¶
- 1.
public static IQbservable<IGroupedObservable<TKey, TSource>> GroupByUntil<TSource, TKey, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<IGroupedObservable<TKey, TSource>, IObservable<TDuration>>> durationSelector) - 2.
public static IQbservable<IGroupedObservable<TKey, TSource>> GroupByUntil<TSource, TKey, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<IGroupedObservable<TKey, TSource>, IObservable<TDuration>>> durationSelector, int capacity) - 3.
public static IQbservable<IGroupedObservable<TKey, TSource>> GroupByUntil<TSource, TKey, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<IGroupedObservable<TKey, TSource>, IObservable<TDuration>>> durationSelector, int capacity, IEqualityComparer<TKey> comparer) - 4.
public static IQbservable<IGroupedObservable<TKey, TSource>> GroupByUntil<TSource, TKey, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<IGroupedObservable<TKey, TSource>, IObservable<TDuration>>> durationSelector, IEqualityComparer<TKey> comparer) - 5.
public static IQbservable<IGroupedObservable<TKey, TElement>> GroupByUntil<TSource, TKey, TElement, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<TSource, TElement>> elementSelector, Expression<Func<IGroupedObservable<TKey, TElement>, IObservable<TDuration>>> durationSelector) - 6.
public static IQbservable<IGroupedObservable<TKey, TElement>> GroupByUntil<TSource, TKey, TElement, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<TSource, TElement>> elementSelector, Expression<Func<IGroupedObservable<TKey, TElement>, IObservable<TDuration>>> durationSelector, int capacity) - 7.
public static IQbservable<IGroupedObservable<TKey, TElement>> GroupByUntil<TSource, TKey, TElement, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<TSource, TElement>> elementSelector, Expression<Func<IGroupedObservable<TKey, TElement>, IObservable<TDuration>>> durationSelector, int capacity, IEqualityComparer<TKey> comparer) - 8.
public static IQbservable<IGroupedObservable<TKey, TElement>> GroupByUntil<TSource, TKey, TElement, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<TSource, TElement>> elementSelector, Expression<Func<IGroupedObservable<TKey, TElement>, IObservable<TDuration>>> durationSelector, IEqualityComparer<TKey> comparer)
1. Overload¶
public static IQbservable<IGroupedObservable<TKey, TSource>> GroupByUntil<TSource, TKey, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<IGroupedObservable<TKey, TSource>, IObservable<TDuration>>> durationSelector)
Summary: Groups the elements of an observable sequence according to a specified key selector function. A duration selector function is used to control the lifetime of groups. When a group expires, it receives an OnCompleted notification. When a new element with the same key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.
Type parameters
| Name | Description |
|---|---|
TSource | The type of the elements in the source sequence. |
TKey | The type of the grouping key computed for each element in the source sequence. |
TDuration | The type of the elements in the duration sequences obtained for each group to denote its lifetime. |
Parameters
| Name | Type | Description |
|---|---|---|
source | [IQbservable | An observable sequence whose elements to group. |
keySelector | Expression | A function to extract the key for each element. |
durationSelector | Expression | A function to signal the expiration of a group. |
Returns: IQbservable
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | source or keySelector or durationSelector is null. |
2. Overload¶
public static IQbservable<IGroupedObservable<TKey, TSource>> GroupByUntil<TSource, TKey, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<IGroupedObservable<TKey, TSource>, IObservable<TDuration>>> durationSelector, int capacity)
Summary: Groups the elements of an observable sequence with the specified initial capacity according to a specified key selector function. A duration selector function is used to control the lifetime of groups. When a group expires, it receives an OnCompleted notification. When a new element with the same key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.
Type parameters
| Name | Description |
|---|---|
TSource | The type of the elements in the source sequence. |
TKey | The type of the grouping key computed for each element in the source sequence. |
TDuration | The type of the elements in the duration sequences obtained for each group to denote its lifetime. |
Parameters
| Name | Type | Description |
|---|---|---|
source | [IQbservable | An observable sequence whose elements to group. |
keySelector | Expression | A function to extract the key for each element. |
durationSelector | Expression | A function to signal the expiration of a group. |
capacity | int | The initial number of elements that the underlying dictionary can contain. |
Returns: IQbservable
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | source or keySelector or durationSelector is null. |
| System.ArgumentOutOfRangeException | capacity is less than 0. |
3. Overload¶
public static IQbservable<IGroupedObservable<TKey, TSource>> GroupByUntil<TSource, TKey, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<IGroupedObservable<TKey, TSource>, IObservable<TDuration>>> durationSelector, int capacity, IEqualityComparer<TKey> comparer)
Summary: Groups the elements of an observable sequence with the specified initial capacity according to a specified key selector function and comparer. A duration selector function is used to control the lifetime of groups. When a group expires, it receives an OnCompleted notification. When a new element with the same key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.
Type parameters
| Name | Description |
|---|---|
TSource | The type of the elements in the source sequence. |
TKey | The type of the grouping key computed for each element in the source sequence. |
TDuration | The type of the elements in the duration sequences obtained for each group to denote its lifetime. |
Parameters
| Name | Type | Description |
|---|---|---|
source | [IQbservable | An observable sequence whose elements to group. |
keySelector | Expression | A function to extract the key for each element. |
durationSelector | Expression | A function to signal the expiration of a group. |
capacity | int | The initial number of elements that the underlying dictionary can contain. |
comparer | IEqualityComparer | An equality comparer to compare keys with. |
Returns: IQbservable
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | source or keySelector or durationSelector or comparer is null. |
| System.ArgumentOutOfRangeException | capacity is less than 0. |
4. Overload¶
public static IQbservable<IGroupedObservable<TKey, TSource>> GroupByUntil<TSource, TKey, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<IGroupedObservable<TKey, TSource>, IObservable<TDuration>>> durationSelector, IEqualityComparer<TKey> comparer)
Summary: Groups the elements of an observable sequence according to a specified key selector function and comparer. A duration selector function is used to control the lifetime of groups. When a group expires, it receives an OnCompleted notification. When a new element with the same key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.
Type parameters
| Name | Description |
|---|---|
TSource | The type of the elements in the source sequence. |
TKey | The type of the grouping key computed for each element in the source sequence. |
TDuration | The type of the elements in the duration sequences obtained for each group to denote its lifetime. |
Parameters
| Name | Type | Description |
|---|---|---|
source | [IQbservable | An observable sequence whose elements to group. |
keySelector | Expression | A function to extract the key for each element. |
durationSelector | Expression | A function to signal the expiration of a group. |
comparer | IEqualityComparer | An equality comparer to compare keys with. |
Returns: IQbservable
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | source or keySelector or durationSelector or comparer is null. |
5. Overload¶
public static IQbservable<IGroupedObservable<TKey, TElement>> GroupByUntil<TSource, TKey, TElement, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<TSource, TElement>> elementSelector, Expression<Func<IGroupedObservable<TKey, TElement>, IObservable<TDuration>>> durationSelector)
Summary: Groups the elements of an observable sequence according to a specified key selector function and selects the resulting elements by using a specified function. A duration selector function is used to control the lifetime of groups. When a group expires, it receives an OnCompleted notification. When a new element with the same key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.
Type parameters
| Name | Description |
|---|---|
TSource | The type of the elements in the source sequence. |
TKey | The type of the grouping key computed for each element in the source sequence. |
TElement | The type of the elements within the groups computed for each element in the source sequence. |
TDuration | The type of the elements in the duration sequences obtained for each group to denote its lifetime. |
Parameters
| Name | Type | Description |
|---|---|---|
source | [IQbservable | An observable sequence whose elements to group. |
keySelector | Expression | A function to extract the key for each element. |
elementSelector | Expression | A function to map each source element to an element in an observable group. |
durationSelector | Expression | A function to signal the expiration of a group. |
Returns: IQbservable
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | source or keySelector or elementSelector or durationSelector is null. |
6. Overload¶
public static IQbservable<IGroupedObservable<TKey, TElement>> GroupByUntil<TSource, TKey, TElement, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<TSource, TElement>> elementSelector, Expression<Func<IGroupedObservable<TKey, TElement>, IObservable<TDuration>>> durationSelector, int capacity)
Summary: Groups the elements of an observable sequence with the specified initial capacity according to a specified key selector function and selects the resulting elements by using a specified function. A duration selector function is used to control the lifetime of groups. When a group expires, it receives an OnCompleted notification. When a new element with the same key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.
Type parameters
| Name | Description |
|---|---|
TSource | The type of the elements in the source sequence. |
TKey | The type of the grouping key computed for each element in the source sequence. |
TElement | The type of the elements within the groups computed for each element in the source sequence. |
TDuration | The type of the elements in the duration sequences obtained for each group to denote its lifetime. |
Parameters
| Name | Type | Description |
|---|---|---|
source | [IQbservable | An observable sequence whose elements to group. |
keySelector | Expression | A function to extract the key for each element. |
elementSelector | Expression | A function to map each source element to an element in an observable group. |
durationSelector | Expression | A function to signal the expiration of a group. |
capacity | int | The initial number of elements that the underlying dictionary can contain. |
Returns: IQbservable
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | source or keySelector or elementSelector or durationSelector is null. |
| System.ArgumentOutOfRangeException | capacity is less than 0. |
7. Overload¶
public static IQbservable<IGroupedObservable<TKey, TElement>> GroupByUntil<TSource, TKey, TElement, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<TSource, TElement>> elementSelector, Expression<Func<IGroupedObservable<TKey, TElement>, IObservable<TDuration>>> durationSelector, int capacity, IEqualityComparer<TKey> comparer)
Summary: Groups the elements of an observable sequence with the specified initial capacity according to a specified key selector function and comparer and selects the resulting elements by using a specified function. A duration selector function is used to control the lifetime of groups. When a group expires, it receives an OnCompleted notification. When a new element with the same key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.
Type parameters
| Name | Description |
|---|---|
TSource | The type of the elements in the source sequence. |
TKey | The type of the grouping key computed for each element in the source sequence. |
TElement | The type of the elements within the groups computed for each element in the source sequence. |
TDuration | The type of the elements in the duration sequences obtained for each group to denote its lifetime. |
Parameters
| Name | Type | Description |
|---|---|---|
source | [IQbservable | An observable sequence whose elements to group. |
keySelector | Expression | A function to extract the key for each element. |
elementSelector | Expression | A function to map each source element to an element in an observable group. |
durationSelector | Expression | A function to signal the expiration of a group. |
capacity | int | The initial number of elements that the underlying dictionary can contain. |
comparer | IEqualityComparer | An equality comparer to compare keys with. |
Returns: IQbservable
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | source or keySelector or elementSelector or durationSelector or comparer is null. |
| System.ArgumentOutOfRangeException | capacity is less than 0. |
8. Overload¶
public static IQbservable<IGroupedObservable<TKey, TElement>> GroupByUntil<TSource, TKey, TElement, TDuration>(this IQbservable<TSource> source, Expression<Func<TSource, TKey>> keySelector, Expression<Func<TSource, TElement>> elementSelector, Expression<Func<IGroupedObservable<TKey, TElement>, IObservable<TDuration>>> durationSelector, IEqualityComparer<TKey> comparer)
Summary: Groups the elements of an observable sequence according to a specified key selector function and comparer and selects the resulting elements by using a specified function. A duration selector function is used to control the lifetime of groups. When a group expires, it receives an OnCompleted notification. When a new element with the same key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.
Type parameters
| Name | Description |
|---|---|
TSource | The type of the elements in the source sequence. |
TKey | The type of the grouping key computed for each element in the source sequence. |
TElement | The type of the elements within the groups computed for each element in the source sequence. |
TDuration | The type of the elements in the duration sequences obtained for each group to denote its lifetime. |
Parameters
| Name | Type | Description |
|---|---|---|
source | [IQbservable | An observable sequence whose elements to group. |
keySelector | Expression | A function to extract the key for each element. |
elementSelector | Expression | A function to map each source element to an element in an observable group. |
durationSelector | Expression | A function to signal the expiration of a group. |
comparer | IEqualityComparer | An equality comparer to compare keys with. |
Returns: IQbservable
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | source or keySelector or elementSelector or durationSelector or comparer is null. |