From 15a39e31d2a518844cf466b9e7f232b66d9b3928 Mon Sep 17 00:00:00 2001 From: "Collin M. Barrett" Date: Tue, 20 Feb 2018 19:26:22 -0600 Subject: [PATCH] add Languages to ListDetails API endpoint ref #256 --- .../FilterListService/FilterListDetailsDto.cs | 2 ++ .../FilterListService/FilterListService.cs | 5 ++--- .../FilterListService/MappingProfiles.cs | 16 ++++++++++++++++ 3 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 src/FilterLists.Services/FilterListService/MappingProfiles.cs diff --git a/src/FilterLists.Services/FilterListService/FilterListDetailsDto.cs b/src/FilterLists.Services/FilterListService/FilterListDetailsDto.cs index c9ad0ca40..04799d522 100644 --- a/src/FilterLists.Services/FilterListService/FilterListDetailsDto.cs +++ b/src/FilterLists.Services/FilterListService/FilterListDetailsDto.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; namespace FilterLists.Services.FilterListService { @@ -13,6 +14,7 @@ public class FilterListDetailsDto public string ForumUrl { get; set; } public string HomeUrl { get; set; } public string IssuesUrl { get; set; } + public IEnumerable Languages { get; set; } public string Name { get; set; } public string PolicyUrl { get; set; } public DateTime? PublishedDate { get; set; } diff --git a/src/FilterLists.Services/FilterListService/FilterListService.cs b/src/FilterLists.Services/FilterListService/FilterListService.cs index f1f97b90c..c51994c65 100644 --- a/src/FilterLists.Services/FilterListService/FilterListService.cs +++ b/src/FilterLists.Services/FilterListService/FilterListService.cs @@ -3,7 +3,6 @@ using System.Threading.Tasks; using AutoMapper.QueryableExtensions; using FilterLists.Data; -using FilterLists.Data.Entities; using Microsoft.EntityFrameworkCore; namespace FilterLists.Services.FilterListService @@ -19,7 +18,7 @@ public FilterListService(FilterListsDbContext filterListsDbContext) public async Task> GetAllSummariesAsync() { - return await filterListsDbContext.Set() + return await filterListsDbContext.FilterLists .AsNoTracking() .OrderBy(x => x.Name) .ProjectTo() @@ -28,7 +27,7 @@ public async Task> GetAllSummariesAsync() public async Task GetDetailsAsync(int id) { - return await filterListsDbContext.Set() + return await filterListsDbContext.FilterLists .AsNoTracking() .ProjectTo() .FirstAsync(x => x.Id == id); diff --git a/src/FilterLists.Services/FilterListService/MappingProfiles.cs b/src/FilterLists.Services/FilterListService/MappingProfiles.cs new file mode 100644 index 000000000..2c8f7e538 --- /dev/null +++ b/src/FilterLists.Services/FilterListService/MappingProfiles.cs @@ -0,0 +1,16 @@ +using System.Linq; +using AutoMapper; +using FilterLists.Data.Entities; + +namespace FilterLists.Services.FilterListService +{ + public class MappingProfiles : Profile + { + public MappingProfiles() + { + CreateMap() + .ForMember(d => d.Languages, + opt => opt.MapFrom(c => c.FilterListLanguages.Select(x => x.Language.Name))); + } + } +} \ No newline at end of file