/// <summary> /// Gets the <see cref="ResourceGroupCost"/> instance. /// </summary> /// <param name="group"><see cref="ResourceGroupDateKey"/> instance.</param> /// <param name="records">List of <see cref="ResourceCosts"/> instances.</param> /// <returns>Returns the <see cref="ResourceGroupCost"/> instance.</returns> public static ResourceGroupCost GetResourceGroupCost(ResourceGroupDateKey group, IEnumerable <ResourceCosts> records) { var cost = new ResourceGroupCost() { ResourceGroupName = group.ResourceGroupName, Cost = records.Sum(p => p.CalculatedCosts) }; return(cost); }
/// <summary> /// Gets the <see cref="ResourceGroupDateKey"/> instance. /// </summary> /// <param name="cost"><see cref="ResourceCosts"/> instance.</param> /// <returns>Returns the <see cref="ResourceGroupDateKey"/> instance.</returns> public static ResourceGroupDateKey GetResourceGroupDateKey(ResourceCosts cost) { var rgd = new ResourceGroupDateKey() { ResourceGroupName = string.Empty, DateStart = cost.UsageValue.Properties.UsageStartTimeAsDate.ToUniversalTime().ToString("O"), DateEnd = cost.UsageValue.Properties.UsageEndTimeAsDateTime.ToUniversalTime().ToString("O") }; var resourceGroupName = GetResourceGroupKey(cost); if (resourceGroupName.IsNullOrWhiteSpace()) { return(rgd); } rgd.ResourceGroupName = resourceGroupName.ToLowerInvariant(); return(rgd); }