From e82fa8d05fc9e451fa8543136490bf7996a3b8b2 Mon Sep 17 00:00:00 2001 From: TheXamlGuy Date: Thu, 23 May 2024 20:42:03 +0100 Subject: [PATCH] Fix caching work --- Bitvault.Avalonia/App.axaml.cs | 4 +++- Bitvault/AggerateContainerViewModelHandler.cs | 2 -- Bitvault/QueryContainerHandler.cs | 20 ++++++++++--------- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/Bitvault.Avalonia/App.axaml.cs b/Bitvault.Avalonia/App.axaml.cs index 25c66b6..af0df89 100644 --- a/Bitvault.Avalonia/App.axaml.cs +++ b/Bitvault.Avalonia/App.axaml.cs @@ -10,6 +10,7 @@ using Microsoft.Extensions.DependencyInjection.Extensions; using HotAvalonia; using Bitvault.Data; using System.Collections.Generic; +using System; namespace Bitvault.Avalonia; @@ -42,7 +43,8 @@ public partial class App : Application { args.AddServices(services => { - services.AddTransient>(provider => Comparer.Create((x, z) => x.Name.CompareTo(z.Name))); + services.AddTransient>(provider => Comparer.Create((x, z) => + StringComparer.CurrentCultureIgnoreCase.Compare(x.Name, z.Name))); services.AddCache(); diff --git a/Bitvault/AggerateContainerViewModelHandler.cs b/Bitvault/AggerateContainerViewModelHandler.cs index f14cbd4..2ab0095 100644 --- a/Bitvault/AggerateContainerViewModelHandler.cs +++ b/Bitvault/AggerateContainerViewModelHandler.cs @@ -43,7 +43,5 @@ public class AggerateContainerViewModelHandler(IMediator mediator, } } } - - var d = cache; } } diff --git a/Bitvault/QueryContainerHandler.cs b/Bitvault/QueryContainerHandler.cs index d22c622..705d28b 100644 --- a/Bitvault/QueryContainerHandler.cs +++ b/Bitvault/QueryContainerHandler.cs @@ -11,7 +11,7 @@ public class QueryContainerHandler(IDbContextFactory dbConte public async Task> Handle(RequestEventArgs args, CancellationToken cancellationToken) { - List<(Guid Id, string Name, bool Favourite, bool Archived)> items = []; + List<(Guid Id, string? Name, bool Favourite, bool Archived)> items = []; if (args.Value is QueryContainerConfiguration queryConfiguration) { @@ -41,16 +41,18 @@ public class QueryContainerHandler(IDbContextFactory dbConte var results = await Task.Run(async () => { using ContainerDbContext context = dbContextFactory.CreateDbContext(); - return await context.Set().Where(predicate).Select(x => new - { - x.Id, - x.Name, - Favourite = x.State == 1, - Archived = x.State == 2 - }).OrderBy(x => x.Name).ToListAsync(); + return await context.Set() + .Where(predicate) + .Select(x => new + { + x.Id, + x.Name, + Favourite = x.State == 1, + Archived = x.State == 2 + }).ToListAsync(); }); - foreach (var result in results) + foreach (var result in results.OrderBy(x => x.Name, StringComparer.OrdinalIgnoreCase)) { items.Add(new(result.Id, result.Name, result.Favourite, result.Archived)); }