Check when list is null and campaign details doesn't exist

This commit is contained in:
Christian Arenas 2017-06-16 10:13:26 +02:00
parent ff790afe56
commit 278083ae8e

View File

@ -2,9 +2,9 @@ namespace Microsoft.eShopOnContainers.WebMVC.Controllers
{
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.eShopOnContainers.WebMVC.Models;
using Microsoft.eShopOnContainers.WebMVC.Services;
using Microsoft.eShopOnContainers.WebMVC.ViewModels;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
@ -18,7 +18,14 @@ namespace Microsoft.eShopOnContainers.WebMVC.Controllers
public async Task<IActionResult> Index()
{
var campaignList = await _campaignService.GetCampaigns();
var campaignDtoList = await _campaignService.GetCampaigns();
if(campaignDtoList is null)
{
return View();
}
var campaignList = MapCampaignModelListToDtoList(campaignDtoList);
return View(campaignList);
}
@ -27,6 +34,11 @@ namespace Microsoft.eShopOnContainers.WebMVC.Controllers
{
var campaignDto = await _campaignService.GetCampaignById(id);
if (campaignDto is null)
{
return NotFound();
}
var campaign = new Campaign
{
Id = campaignDto.Id,
@ -39,5 +51,30 @@ namespace Microsoft.eShopOnContainers.WebMVC.Controllers
return View(campaign);
}
private List<Campaign> MapCampaignModelListToDtoList(IEnumerable<CampaignDTO> campaignDtoList)
{
var campaignList = new List<Campaign>();
foreach(var campaignDto in campaignDtoList)
{
campaignList.Add(MapCampaignDtoToModel(campaignDto));
}
return campaignList;
}
private Campaign MapCampaignDtoToModel(CampaignDTO campaign)
{
return new Campaign
{
Id = campaign.Id,
Name = campaign.Name,
Description = campaign.Description,
From = campaign.From,
To = campaign.To,
PictureUri = campaign.PictureUri
};
}
}
}