From c080673fc190d1f805285065212dba0a8f05b2dc Mon Sep 17 00:00:00 2001 From: Collin Barrett Date: Sat, 4 Aug 2018 17:18:21 -0500 Subject: [PATCH] update automapper DI nuget --- .../FilterList/FilterListService.cs | 10 ++++++---- src/FilterLists.Services/FilterLists.Services.csproj | 2 +- src/FilterLists.Services/RuleService.cs | 1 - src/FilterLists.Services/Seed/SeedService.cs | 10 +++++----- src/FilterLists.Services/Service.cs | 12 ++++++++++-- src/FilterLists.Services/Snapshot/SnapshotService.cs | 6 +++--- 6 files changed, 25 insertions(+), 16 deletions(-) diff --git a/src/FilterLists.Services/FilterList/FilterListService.cs b/src/FilterLists.Services/FilterList/FilterListService.cs index ff8d454ad..42b2d8ca7 100644 --- a/src/FilterLists.Services/FilterList/FilterListService.cs +++ b/src/FilterLists.Services/FilterList/FilterListService.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; +using AutoMapper; using AutoMapper.QueryableExtensions; using FilterLists.Data; using JetBrains.Annotations; @@ -12,9 +13,8 @@ namespace FilterLists.Services.FilterList [UsedImplicitly] public class FilterListService : Service { - public FilterListService(FilterListsDbContext dbContext) : base(dbContext) + public FilterListService(FilterListsDbContext dbContext, IMapper mapper) : base(dbContext, mapper) { - DbContext = dbContext; } public async Task> GetAllSummariesAsync() @@ -39,7 +39,9 @@ public async Task> GetAllSummariesAsync() } private async Task> GetSummaryDtos() => - await DbContext.FilterLists.OrderBy(l => l.Name).ProjectTo().ToListAsync(); + await DbContext.FilterLists.OrderBy(l => l.Name) + .ProjectTo(Mapper.ConfigurationProvider) + .ToListAsync(); private async Task> GetLatestSnapshots() { @@ -53,7 +55,7 @@ private async Task> GetSummaryDtos() => public async Task GetDetailsAsync(uint id) { - var details = await DbContext.FilterLists.ProjectTo() + var details = await DbContext.FilterLists.ProjectTo(Mapper.ConfigurationProvider) .FirstAsync(x => x.Id == id) .FilterParentListFromMaintainerAdditionalLists(); details.RuleCount = await GetActiveRuleCount(details); diff --git a/src/FilterLists.Services/FilterLists.Services.csproj b/src/FilterLists.Services/FilterLists.Services.csproj index 1118ffca5..351ebaaa9 100644 --- a/src/FilterLists.Services/FilterLists.Services.csproj +++ b/src/FilterLists.Services/FilterLists.Services.csproj @@ -16,7 +16,7 @@ - + diff --git a/src/FilterLists.Services/RuleService.cs b/src/FilterLists.Services/RuleService.cs index bc6f41fce..b0b456b06 100644 --- a/src/FilterLists.Services/RuleService.cs +++ b/src/FilterLists.Services/RuleService.cs @@ -10,7 +10,6 @@ public class RuleService : Service { public RuleService(FilterListsDbContext dbContext) : base(dbContext) { - DbContext = dbContext; } public async Task GetCountAll() => await DbContext diff --git a/src/FilterLists.Services/Seed/SeedService.cs b/src/FilterLists.Services/Seed/SeedService.cs index e272ff823..168cda1a9 100644 --- a/src/FilterLists.Services/Seed/SeedService.cs +++ b/src/FilterLists.Services/Seed/SeedService.cs @@ -2,6 +2,7 @@ using System.Linq; using System.Reflection; using System.Threading.Tasks; +using AutoMapper; using AutoMapper.QueryableExtensions; using FilterLists.Data; using JetBrains.Annotations; @@ -12,18 +13,17 @@ namespace FilterLists.Services.Seed [UsedImplicitly] public class SeedService : Service { - public SeedService(FilterListsDbContext dbContext) : base(dbContext) + public SeedService(FilterListsDbContext dbContext, IMapper mapper) : base(dbContext, mapper) { - DbContext = dbContext; } public async Task> GetAllAsync() where TEntity : class => - await DbContext.Set().ProjectTo().ToArrayAsync(); + await DbContext.Set().ProjectTo(Mapper.ConfigurationProvider).ToArrayAsync(); public async Task> GetAllAsync(PropertyInfo primarySort) where TEntity : class => await DbContext.Set() .OrderBy(x => primarySort.GetValue(x, null)) - .ProjectTo() + .ProjectTo(Mapper.ConfigurationProvider) .ToArrayAsync(); public async Task> @@ -31,7 +31,7 @@ public async Task> where TEntity : class => await DbContext.Set() .OrderBy(x => primarySort.GetValue(x, null)) .ThenBy(x => secondarySort.GetValue(x, null)) - .ProjectTo() + .ProjectTo(Mapper.ConfigurationProvider) .ToArrayAsync(); } } \ No newline at end of file diff --git a/src/FilterLists.Services/Service.cs b/src/FilterLists.Services/Service.cs index 1aff547bd..e981a1de0 100644 --- a/src/FilterLists.Services/Service.cs +++ b/src/FilterLists.Services/Service.cs @@ -1,4 +1,5 @@ -using FilterLists.Data; +using AutoMapper; +using FilterLists.Data; using JetBrains.Annotations; namespace FilterLists.Services @@ -6,11 +7,18 @@ namespace FilterLists.Services [UsedImplicitly] public class Service { - protected FilterListsDbContext DbContext; + protected readonly FilterListsDbContext DbContext; + protected readonly IMapper Mapper; public Service(FilterListsDbContext dbContext) { DbContext = dbContext; } + + public Service(FilterListsDbContext dbContext, IMapper mapper) + { + DbContext = dbContext; + Mapper = mapper; + } } } \ No newline at end of file diff --git a/src/FilterLists.Services/Snapshot/SnapshotService.cs b/src/FilterLists.Services/Snapshot/SnapshotService.cs index cd69500fb..c0c3c0376 100644 --- a/src/FilterLists.Services/Snapshot/SnapshotService.cs +++ b/src/FilterLists.Services/Snapshot/SnapshotService.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; +using AutoMapper; using AutoMapper.QueryableExtensions; using FilterLists.Data; using JetBrains.Annotations; @@ -15,9 +16,8 @@ public class SnapshotService : Service //TODO: update algorithm to support non-standard list sizes and formats (#200, #201) private readonly List ignoreLists = new List {48, 149, 173, 185, 186, 187, 188, 189, 352}; - public SnapshotService(FilterListsDbContext dbContext) : base(dbContext) + public SnapshotService(FilterListsDbContext dbContext, IMapper mapper) : base(dbContext, mapper) { - DbContext = dbContext; } public async Task CaptureAsync(int batchSize) @@ -46,7 +46,7 @@ await DbContext .ThenBy(list => list.Snapshots.Select(ss => ss.CreatedDateUtc).OrderByDescending(sscd => sscd).FirstOrDefault()) .Take(batchSize) - .ProjectTo() + .ProjectTo(Mapper.ConfigurationProvider) .ToListAsync(); private IEnumerable GetSnapshots(IEnumerable lists) =>