add automapper and DTO

This commit is contained in:
Collin M. Barrett 2017-10-29 20:57:25 -05:00
parent f784b31075
commit a48014e167
5 changed files with 16 additions and 6 deletions

View file

@ -17,7 +17,7 @@ public ListsController(IFilterListService filterListService)
[HttpGet]
public IActionResult Get()
{
return Json(filterListService.GetAll());
return Json(filterListService.GetAllSummaries());
}
}
}

View file

@ -1,10 +1,10 @@
using System.Collections.Generic;
using FilterLists.Data.Entities;
using FilterLists.Services.Models;
namespace FilterLists.Services.Contracts
{
public interface IFilterListService
{
IEnumerable<FilterList> GetAll();
IEnumerable<FilterListSummaryDto> GetAllSummaries();
}
}

View file

@ -6,6 +6,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="AutoMapper" Version="6.1.1" />
<PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.1.1" />
</ItemGroup>

View file

@ -1,7 +1,8 @@
using System.Collections.Generic;
using FilterLists.Data.Entities;
using AutoMapper;
using FilterLists.Data.Repositories.Contracts;
using FilterLists.Services.Contracts;
using FilterLists.Services.Models;
namespace FilterLists.Services.Implementations
{
@ -14,9 +15,9 @@ public FilterListService(IFilterListRepository filterListRepository)
this.filterListRepository = filterListRepository;
}
public IEnumerable<FilterList> GetAll()
public IEnumerable<FilterListSummaryDto> GetAllSummaries()
{
return filterListRepository.GetAll();
return Mapper.Map<IEnumerable<FilterListSummaryDto>>(filterListRepository.GetAll());
}
}
}

View file

@ -0,0 +1,8 @@
namespace FilterLists.Services.Models
{
public class FilterListSummaryDto
{
public string Description { get; set; }
public string Name { get; set; }
}
}