48 lines
1.7 KiB
C#
Raw Normal View History

namespace Microsoft.eShopOnContainers.Services.Ordering.API.Infrastructure
2016-11-22 18:40:47 +01:00
{
using AspNetCore.Builder;
using Microsoft.EntityFrameworkCore;
using Microsoft.eShopOnContainers.Services.Ordering.Domain;
2016-11-22 18:40:47 +01:00
using Ordering.Infrastructure;
using System.Linq;
2016-11-22 18:40:47 +01:00
using System.Threading.Tasks;
using Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.BuyerAggregate;
using Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderAggregate;
2016-11-22 18:40:47 +01:00
public class OrderingContextSeed
{
public static async Task SeedAsync(IApplicationBuilder applicationBuilder)
{
var context = (OrderingContext)applicationBuilder
.ApplicationServices.GetService(typeof(OrderingContext));
using (context)
{
context.Database.Migrate();
if (!context.CardTypes.Any())
{
context.CardTypes.Add(CardType.Amex);
context.CardTypes.Add(CardType.Visa);
context.CardTypes.Add(CardType.MasterCard);
await context.SaveChangesAsync();
}
if (!context.OrderStatus.Any())
{
2017-05-20 12:35:16 -07:00
context.OrderStatus.Add(OrderStatus.Submitted);
context.OrderStatus.Add(OrderStatus.AwaitingValidation);
context.OrderStatus.Add(OrderStatus.StockConfirmed);
context.OrderStatus.Add(OrderStatus.Paid);
context.OrderStatus.Add(OrderStatus.Shipped);
context.OrderStatus.Add(OrderStatus.Cancelled);
}
2016-11-22 18:40:47 +01:00
await context.SaveChangesAsync();
}
}
}
}