Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AF SDK Reference

AFData.SummaryAsync Method

  • Last UpdatedNov 18, 2025
  • 4 minute read
AFData.SummaryAsync Method
Returns several summaries for a single attribute over a single time range.

Namespace:  OSIsoft.AF.Data
Assembly:  OSIsoft.AFSDK (in OSIsoft.AFSDK.dll) Version: 3.1.1.1182

Syntax

public Task<IDictionary<AFSummaryTypes, AFValue>> SummaryAsync(
	AFTimeRange timeRange,
	AFSummaryTypes summaryType,
	AFCalculationBasis calculationBasis,
	AFTimestampCalculation timeType,
	CancellationToken cancellationToken = default
)
Public Function SummaryAsync ( 
	timeRange As AFTimeRange,
	summaryType As AFSummaryTypes,
	calculationBasis As AFCalculationBasis,
	timeType As AFTimestampCalculation,
	Optional cancellationToken As CancellationToken = Nothing
) As Task(Of IDictionary(Of AFSummaryTypes, AFValue))

Dim instance As AFData
Dim timeRange As AFTimeRange
Dim summaryType As AFSummaryTypes
Dim calculationBasis As AFCalculationBasis
Dim timeType As AFTimestampCalculation
Dim cancellationToken As CancellationToken
Dim returnValue As Task(Of IDictionary(Of AFSummaryTypes, AFValue))

returnValue = instance.SummaryAsync(timeRange, 
	summaryType, calculationBasis, timeType, 
	cancellationToken)
public:
Task<IDictionary<AFSummaryTypes, AFValue^>^>^ SummaryAsync(
	AFTimeRange timeRange, 
	AFSummaryTypes summaryType, 
	AFCalculationBasis calculationBasis, 
	AFTimestampCalculation timeType, 
	CancellationToken cancellationToken = CancellationToken()
)
member SummaryAsync : 
        timeRange : AFTimeRange * 
        summaryType : AFSummaryTypes * 
        calculationBasis : AFCalculationBasis * 
        timeType : AFTimestampCalculation * 
        ?cancellationToken : CancellationToken 
(* Defaults:
        let _cancellationToken = defaultArg cancellationToken new CancellationToken()
*)
-> Task<IDictionary<AFSummaryTypes, AFValue>> 

Parameters

timeRange
Type: OSIsoft.AF.TimeAFTimeRange
The time range over which to compute the summary.
summaryType
Type: OSIsoft.AF.DataAFSummaryTypes
A flag which specifies one or more summaries to compute over the time range.
calculationBasis
Type: OSIsoft.AF.DataAFCalculationBasis
Specifies the method of evaluating the data over the time range.
timeType
Type: OSIsoft.AF.DataAFTimestampCalculation
A flag indicating what how to calculate a timestamp for each interval.
cancellationToken (Optional)
Type: System.ThreadingCancellationToken
A cancellation token used to abort processing before completion. Passing the default CancellationToken.None will run to completion or until the PIConnectionInfo.OperationTimeOut period elapses.

Return Value

Type: TaskIDictionaryAFSummaryTypes, AFValue
Returns a task whose result is a dictionary of AFValue, indexed by the specific AFSummaryTypes.

Exceptions

ExceptionCondition
AggregateException Asynchronous methods throw AggregateException on failure which will contain one or more exceptions containing the failure.

Remarks

Note Notes to Callers
This method, property, or class is not available in the legacy .NET 3.5 version of the SDK.

Security note Security Note
You must have ReadData security rights to read a data value.

Note Notes to Callers
This call might use a background task to complete some of its work. See the Threading Overview for some matters to consider when execution transitions to another thread.

Important note Important
Asynchronous data calls in AF SDK attempt to do as much work as possible asynchronously. If no work can be done asynchronously, then the SupportedDataMethods will report that asynchronous calls are not supported. If an attribute uses a Formula or other calculated data reference has any input that supports asynchronous calls, then the attribute will support asynchronous calls. When making an asynchronous data call, input data will be acquired asynchronously when possible or synchronously otherwise. Data calls that require partitioning across versions will always fall back to synchronous calls.

Important note Important
Impersonation of AF SDK asynchronous calls relies on the .NET framework's built-in support for flowing execution context across asynchronous points. When making these calls while impersonating, the thread or runtime must be configured to propagate the impersonation across these asynchronous points (see the SecurityContext documentation for details).

Version Information

AFSDK

Supported in: 3.1.1, 3.1.0, 3.0.2, 3.0.1, 3.0.0, 2.10.11, 2.10.5, 2.10.0, 2.10, 2.9.5, 2.9, 2.8.5, 2.8

See Also

In This Topic
Related Links
TitleResults for “How to create a CRG?”Also Available in