Untitled

 avatar
unknown
plain_text
2 years ago
4.2 kB
5
Indexable
using FlFi.Common.DTOs;
using FlFI.Membership.Database.Services;
using Microsoft.Identity.Client;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VOD.Membership.Database.Entities;

namespace FlFI.Membership.Database.Extensions
{
    public static class FlFiContextExtensions
    {
        public static async Task SeedMembershipData(this IDbService service)
        {
            string description = "FlixFilm Movie Collection";

            try
            {
                #region Add Film
                await service.AddAsync<Film, FilmDTO>(new FilmDTO
                {
                    Id = 1,
                    Title = "Braveheart",
                    Released = new DateTime(2020, 02, 02),
                    DirectorId = 1,
                    Free = true,
                    Description = "Scottish He-Man",
                    FilmUrl = "https://www.youtube.com/watch?v=nMft5QDOHek"
                });

                await service.AddAsync<Film, FilmDTO>(new FilmDTO
                {
                    Id = 2,
                    Title = "Heat",
                    Released = new DateTime(2020, 02, 02),
                    DirectorId = 2,
                    Free = true,
                    Description = "A lot of bang bang",
                    FilmUrl = "https://www.youtube.com/watch?v=14oNcFxiVaQ"
                });

                await service.AddAsync<Film, FilmDTO>(new FilmDTO
                {
                    Id = 3,
                    Title = "Willow",
                    Released = new DateTime(2020, 02, 02),
                    DirectorId = 3,
                    Free = true,
                    Description = "Short mans world",
                    FilmUrl = "https://www.youtube.com/watch?v=14oNcFxiVaQ"
                });

                await service.AddAsync<Film, FilmDTO>(new FilmDTO
                {
                    Id = 4,
                    Title = "Terminator",
                    Released = new DateTime(2020, 02, 02),
                    DirectorId = 4,
                    Free = true,
                    Description = "Nude future man",
                    FilmUrl = "https://www.youtube.com/watch?v=14oNcFxiVaQ"
                });
                await service.SaveChangesAsync();

                var film1 = await service.SingleAsync<Film, FilmDTO>(f => f.Title.Equals("Braveheart"));
                var film2 = await service.SingleAsync<Film, FilmDTO>(f => f.Title.Equals("Heat"));
                var film3 = await service.SingleAsync<Film, FilmDTO>(f => f.Title.Equals("Willow"));
                var film4 = await service.SingleAsync<Film, FilmDTO>(f => f.Title.Equals("Terminator"));
                #endregion

                await service.AddAsync<Director, DirectorDTO>(new DirectorDTO
                {
                    Id = 1,
                    Name = "Mel Gibson",
                });
                await service.AddAsync<Director, DirectorDTO>(new DirectorDTO
                {
                    Id = 2,
                    Name = "Michael Mann",
                });
                await service.AddAsync<Director, DirectorDTO>(new DirectorDTO
                {
                    Id = 3,
                    Name = "Ron Howard",
                });
                await service.AddAsync<Director, DirectorDTO>(new DirectorDTO
                {
                    Id = 4,
                    Name = "James Cameron",
                });
                await service.SaveChangesAsync();

                var director1 = await service.SingleAsync<Director, DirectorDTO>(f => f.Name.Equals("Mel Gibson"));
                var director2 = await service.SingleAsync<Director, DirectorDTO>(f => f.Name.Equals("Michael Mann"));
                var director3 = await service.SingleAsync<Director, DirectorDTO>(f => f.Name.Equals("Ron Howard"));
                var director4 = await service.SingleAsync<Director, DirectorDTO>(f => f.Name.Equals("James Cameron"));


            }
            catch (Exception ex)
            {

            }
        }
    }
}
Editor is loading...