예제 #1
0
 public AddPlayCommandHandler(
     IIdGenerator idGenerator,
     IPlaysContext context,
     ILogger <AddPlayCommandHandler> logger,
     IMapper mapper,
     IPublishEndpoint endpoint)
 {
     _idGenerator = idGenerator;
     _context     = context;
     _logger      = logger;
     _mapper      = mapper;
     _endpoint    = endpoint;
 }
        public static void Initialize(IPlaysContext context)
        {
            if (!context.Plays.Find(_ => true).Any())
            {
                var personGenerator = new PersonNameGenerator();

                var placeGenerator = new PlaceNameGenerator();

                var random = new Random(250);

                var plays = Enumerable.Range(1, 250)
                            .Select(i => new Play
                {
                    Game = new Game
                    {
                        Id    = Guid.NewGuid(),
                        Title = placeGenerator.GenerateRandomPlaceName()
                    },
                    Id           = Guid.NewGuid(),
                    Notes        = placeGenerator.GenerateRandomPlaceName(),
                    PlayedDate   = DateTime.Now.AddDays(-i),
                    PlayerScores = new PlayScore[]
                    {
                        new()
                        {
                            Player = new IdName(Guid.NewGuid(), personGenerator.GenerateRandomFirstAndLastName()),
                            Score  = random.Next()
                        },

                        new()
                        {
                            Player = new IdName(Guid.NewGuid(), personGenerator.GenerateRandomFirstAndLastName()),
                            Score  = random.Next()
                        },

                        new()
                        {
                            Player = new IdName(Guid.NewGuid(),
                                                personGenerator
                                                .GenerateRandomFirstAndLastName()),
                            Score = random.Next()
                        },
                    }
                });