diff --git a/DbFirst.API/Dashboards/SqlDashboardStorage.cs b/DbFirst.API/Dashboards/SqlDashboardStorage.cs index fced0b2..fd44eda 100644 --- a/DbFirst.API/Dashboards/SqlDashboardStorage.cs +++ b/DbFirst.API/Dashboards/SqlDashboardStorage.cs @@ -52,7 +52,33 @@ public sealed class SqlDashboardStorage : IEditableDashboardStorage } var xml = Encoding.UTF8.GetString(data); - return XDocument.Parse(xml); + var doc = XDocument.Parse(xml); + NormalizeCatalogDateDimensions(doc); + return doc; + } + + private static void NormalizeCatalogDateDimensions(XDocument doc) + { + var dateMembers = new HashSet(StringComparer.OrdinalIgnoreCase) + { + "AddedWhen", + "ChangedWhen" + }; + + foreach (var dimension in doc.Descendants("Dimension")) + { + var member = dimension.Attribute("DataMember")?.Value; + if (member == null || !dateMembers.Contains(member)) + { + continue; + } + + var interval = dimension.Attribute("DateTimeGroupInterval")?.Value; + if (string.IsNullOrWhiteSpace(interval) || string.Equals(interval, "Year", StringComparison.OrdinalIgnoreCase)) + { + dimension.SetAttributeValue("DateTimeGroupInterval", "DayMonthYear"); + } + } } public string AddDashboard(XDocument dashboard, string dashboardName) diff --git a/DbFirst.BlazorWasm/Components/CatalogsGrid.razor b/DbFirst.BlazorWasm/Components/CatalogsGrid.razor index b3f4c21..2453a44 100644 --- a/DbFirst.BlazorWasm/Components/CatalogsGrid.razor +++ b/DbFirst.BlazorWasm/Components/CatalogsGrid.razor @@ -3,12 +3,16 @@ @if (!string.IsNullOrWhiteSpace(errorMessage)) @@ -93,42 +62,12 @@ else
- - - - - - - - - - - - - - - - - - - - + + + + - - - - - +