Ejemplo n.º 1
0
        public async Task Execute()
        {
            if (context.Users.Count() < 1)
            {
                using (var transaction = context.Database.BeginTransaction())
                {
                    try
                    {
                        var Uses       = new List <User>();
                        var Clients    = new List <Client>();
                        var BonusCards = new List <BonusCard>();
                        var random     = new Random();
                        for (int i = 1; i < 1001; i++)
                        {
                            Uses.Add(new User()
                            {
                                UserName        = $"{Guid.NewGuid()}",
                                UserFullName    = $"{GenerateUserName.GenerateRandomUsername()}",
                                UserPhoneNumber = $"{GeneratePhoneNumber.GenerateRandomPhoneNumber()}",
                                UserEmail       = $"{GenerateUserName.GenerateRandomUsername()}@gmail.com",
                                LastChangedOn   = DateTime.Now
                            });
                            BonusCards.Add(new BonusCard()
                            {
                                BonusCardNumber  = i.ToString("D6"),
                                BonusCardBalanse = random.Next(0, 100000),
                                BonusCardTimeEnd = DateTime.Now.AddYears(2),
                                LastChangedOn    = DateTime.Now
                            });
                            Clients.Add(new Client()
                            {
                                User          = Uses[i - 1],
                                BonusCard     = BonusCards[i - 1],
                                LastChangedOn = DateTime.Now
                            });
                        }

                        await context.AddRangeAsync(BonusCards);

                        await context.Users.AddRangeAsync(Uses);

                        await context.Clients.AddRangeAsync(Clients);
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                    }
                }
                await context.SaveChangesAsync();
            }
        }
        public IActionResult PostByAuthor(string id)
        {
            var post = _context.Posts.Where(p => p.AppUser.Id == id).ToList();

            if (post.Count == 0)
            {
                Response.StatusCode = 404;
                return(View("NotFound", id));
            }
            var user = _context.Users.SingleOrDefault(p => p.Id == id).UserName;

            ViewData["author"] = GenerateUserName.RenderUserName(user);
            return(View(post));
        }