Computes the maximum value of a view of nullable Int32 values that are obtained
by invoking a transform function on each element of the source view.
Namespace:
C1.LiveLinqAssembly: C1.LiveLinq (in C1.LiveLinq.dll)
Syntax
C# |
---|
public static AggregationView<TSource, Nullable<int>> LiveMax<TSource>( this View<TSource> source, Expression<Func<TSource, Nullable<int>>> selector ) |
Visual Basic |
---|
<ExtensionAttribute> _ Public Shared Function LiveMax(Of TSource) ( _ source As View(Of TSource), _ selector As Expression(Of Func(Of TSource, Nullable(Of Integer))) _ ) As AggregationView(Of TSource, Nullable(Of Integer)) |
Parameters
- source
- Type: C1.LiveLinq.LiveViews..::..View<(Of <(<'TSource>)>)>
A view containing the values to determine the maximum value of.
- selector
- Type: System.Linq.Expressions..::..Expression<(Of <(<'Func<(Of <(<'TSource, Nullable<(Of <(<'Int32>)>)>>)>)>>)>)>
A transform function to apply to each element.
Type Parameters
- TSource
- The type of the elements of source.
Return Value
A view representing the maximum of the values.Remarks
If the source is empty or contains only nulls, the maximum value is null.
It is possible to use standard LINQ query operator Max instead of LiveMax. Both are "live" in the sense that they are recomputed automatically when any change occurs in the source. The difference is that Max will every time loop through the entire source collection and aggregate it from scratch, whereas LiveMax will use a more performant algorithm, will maintain its value incrementally, processing only those source items that actually changed.