.NET API
RunScoreAggregate
Tracon.Abstractions.dllOne aggregated group: every score sharing a breakdown key AND a RunScoreKind.
public sealed record RunScoreAggregate : IEquatable<RunScoreAggregate>Inheritance
Section titled “Inheritance”Implements
Section titled “Implements”Inherited Members
Section titled “Inherited Members”object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Remarks
Section titled “Remarks”The key is deliberately compound. Two different RunScoreKind values never share a group — averaging a 1-5 star rating together with a 0-100 numeric score under the same name would be meaningless. This means the same score name (or author, source, agent) can appear more than once in a breakdown list: once per RunScoreKind it was actually written with.
Constructors
Section titled “Constructors”RunScoreAggregate()
Section titled “ RunScoreAggregate()”public RunScoreAggregate()Properties
Section titled “Properties”Average
Section titled “ Average”The average value. null for RunScoreKind.Categorical, or when every score in the group carries no value.
public double? Average { get; init; }Property Value
Section titled “Property Value”Categories
Section titled “ Categories”Count per category (TextValue), highest count
first. Populated only on RunScoreSummary.ByName entries
whose RunScoreAggregate.Kind is RunScoreKind.Categorical; every
other group carries an empty map.
public IReadOnlyDictionary<string, long> Categories { get; init; }Property Value
Section titled “Property Value”IReadOnlyDictionary<string, long>
The number of scores in the group, INCLUDING those carrying no value.
public required long Count { get; init; }Property Value
Section titled “Property Value”The breakdown key: a score name, an author, a source, or an agent name, depending on which list this entry is in.
public required string Key { get; init; }Property Value
Section titled “Property Value”The shape every score in this group shares.
public required RunScoreKind Kind { get; init; }Property Value
Section titled “Property Value”Maximum
Section titled “ Maximum”The largest value. Same null rule as Average.
public double? Maximum { get; init; }Property Value
Section titled “Property Value”Minimum
Section titled “ Minimum”The smallest value. Same null rule as Average.
public double? Minimum { get; init; }Property Value
Section titled “Property Value”NoValueCount
Section titled “ NoValueCount”The number of scores in the group carrying no value
(Value is null). A
RunScoreKind.Categorical score always carries no value, so
for that kind this equals Count. Never counted into
Average.
public long NoValueCount { get; init; }Property Value
Section titled “Property Value”TruncatedCategoryCount
Section titled “ TruncatedCategoryCount”The number of distinct categories that did not fit inside
RunScoreAggregate.Categories because MaxRows (RunScoreQuery) was
reached. Zero when nothing was cut. Reported instead of silently
dropping categories, which would read as “these categories do not exist”.
public long TruncatedCategoryCount { get; init; }Property Value
Section titled “Property Value”Methods
Section titled “Methods”Equals(object?)
Section titled “ Equals(object?)”public override bool Equals(object? obj)Parameters
Section titled “Parameters”obj object?
Returns
Section titled “Returns”Equals(RunScoreAggregate?)
Section titled “ Equals(RunScoreAggregate?)”public bool Equals(RunScoreAggregate? other)Parameters
Section titled “Parameters”other RunScoreAggregate?
Returns
Section titled “Returns”GetHashCode()
Section titled “ GetHashCode()”public override int GetHashCode()Returns
Section titled “Returns”ToString()
Section titled “ ToString()”public override string ToString()Returns
Section titled “Returns”Operators
Section titled “Operators”operator ==(RunScoreAggregate?, RunScoreAggregate?)
Section titled “ operator ==(RunScoreAggregate?, RunScoreAggregate?)”public static bool operator ==(RunScoreAggregate? left, RunScoreAggregate? right)Parameters
Section titled “Parameters”left RunScoreAggregate?
right RunScoreAggregate?
Returns
Section titled “Returns”operator !=(RunScoreAggregate?, RunScoreAggregate?)
Section titled “ operator !=(RunScoreAggregate?, RunScoreAggregate?)”public static bool operator !=(RunScoreAggregate? left, RunScoreAggregate? right)Parameters
Section titled “Parameters”left RunScoreAggregate?
right RunScoreAggregate?