Computes the average of a view of Int64 values.

Namespace:  C1.LiveLinq
Assembly:  C1.LiveLinq (in C1.LiveLinq.dll)

Syntax

C#
public static AggregationView<long, double> LiveAverage(
	this View<long> source
)
Visual Basic
<ExtensionAttribute> _
Public Shared Function LiveAverage ( _
	source As View(Of Long) _
) As AggregationView(Of Long, Double)

Parameters

source
Type: C1.LiveLinq.LiveViews..::..View<(Of <(<'Int64>)>)>
A view containing the values to calculate the average of.

Return Value

A view representing the average of the values.

Remarks

If the source is empty or contains only nulls, an InvalidOperationException is thrown.

It is possible to use standard LINQ query operator Average instead of LiveAverage. Both are "live" in the sense that they are recomputed automatically when any change occurs in the source. The difference is that Average will every time loop through the entire source collection and aggregate it from scratch, whereas LiveAverage will use a more performant algorithm, will maintain its value incrementally, processing only those source items that actually changed.

See Also