예제 #1
0
        public async Task <IResult> AddAsync(Pictures picture)
        {
            try
            {
                //if (picture.Id == null)
                //{
                //    Guid guid = Guid.NewGuid();
                //    picture.Id=guid.ToString();
                //}
                _logger.Information($"Method:{MethodBase.GetCurrentMethod().DeclaringType.FullName} " +
                                    $"Parametrs:articleId={picture.Id}");


                //заменить на процедуру добавления в sql
                _dbContext.Pictures.Add(picture);
                await _dbContext.SaveChangesAsync();

                //List<AuthorArticle> authors = new List<AuthorArticle>();
                //если запись параллельна что тогда

                //string name = _dbContext.Pictures.MaxAsync(x => x.Id).Result;
                // не нужно
                return(await Task.FromResult(Result.Success()));
            }
            catch (Exception ex)
            {
                _logger.Error($"Error:{ex.ToString()}");
                return(await Task.FromResult(Result.Fail()));
            }
        }
예제 #2
0
        public async Task <IActionResult> PutArticles(int id, [FromBody] Articles articles)
        {
            if (id != articles.id)
            {
                return(BadRequest());
            }

            _context.Entry(articles).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ArticlesExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
예제 #3
0
        public async Task <IResult> AddAsync(Topics topic)
        {
            try
            {
                if (topic == null)
                {
                    return(await Task.FromResult(Result.Fail("topic null")));
                }
                _dbContext.Topics.Add(topic);
                int result = await _dbContext.SaveChangesAsync();

                if (result > 0)
                {
                    return(await Task.FromResult(Result.Success()));
                }
                else
                {
                    return(await Task.FromResult(Result.Fail("Not Create")));
                }
            }
            catch (Exception ex)
            {
                _logger.Error($"Error:{ex.ToString()}");
                return(await Task.FromResult(Result.Fail("Not Create")));
            }
            //throw new NotImplementedException();
        }
예제 #4
0
        public async Task <TEntity> Insert(TEntity entity)
        {
            _context.Entry(entity).State = EntityState.Modified;
            await _context.AddAsync(entity);

            await _context.SaveChangesAsync();

            return(entity);
        }
예제 #5
0
        public async Task <User> Delete(long id)
        {
            var entity = await _context.Users.FindAsync(id);

            if (entity == null)
            {
                throw new EntityNotFoundException($"Cannot find object of type \"{typeof(User)}\" with id {id}", $"Cannot delete {typeof(User)}. Object is missing.");
            }

            _context.Users.Remove(entity);
            await _context.SaveChangesAsync();

            return(entity);
        }
예제 #6
0
        public async Task AddUserRatingAsync(int articleId, UserRating userRating)
        {
            userRating.ArticleId = articleId;

            await _context.UserRatings.AddAsync(userRating);

            await _context.SaveChangesAsync();
        }
예제 #7
0
        public async Task <IResult> UpdateAsync(Articles article)
        {
            try
            {
                _logger.Information($"Method:{MethodBase.GetCurrentMethod().DeclaringType.FullName} Parametrs:articleId={article.ArticleId}");
                //throw new NotImplementedException();
                var currentArticle = _dbContext.Articles.FirstOrDefaultAsync(z => z.ArticleId == article.ArticleId).Result;
                if (currentArticle == null)
                {
                    return(await Task.FromResult(Result.Fail()));
                }
                currentArticle.Context           = article.Context;
                currentArticle.Description       = article.Description;
                currentArticle.Name              = article.Name;
                currentArticle.UpdateDateTime    = article.UpdateDateTime;
                currentArticle.StatusPublication = article.StatusPublication;
                currentArticle.StatusVisibleUser = article.StatusVisibleUser;

                currentArticle.TopicArticle = article.TopicArticle;
                _dbContext.Articles.Update(currentArticle);
                int result = await _dbContext.SaveChangesAsync();

                if (result > 0)
                {
                    return(await Task.FromResult(Result.Success()));
                }
                else
                {
                    return(await Task.FromResult(Result.Success("not update")));
                }
            }
            catch (Exception ex)
            {
                _logger.Error($"Error:{ex.ToString()}");
                return(await Task.FromResult(Result.Fail()));
            }
        }
예제 #8
0
 public static async Task SeedTopics(ArticleDbContext context)
 {
     if (!context.Topics.Any())
     {
         context.Topics.Add(new Topic {
             TopicName = "Basketball"
         });
         context.Topics.Add(new Topic {
             TopicName = "IT"
         });
         context.Topics.Add(new Topic {
             TopicName = "Business"
         });
         await context.SaveChangesAsync();
     }
 }
예제 #9
0
        public static async Task SeedRoles(ArticleDbContext context, RoleManager <Role> roleManager, UserManager <User> userManager)
        {
            if (!context.Roles.Any())
            {
                await roleManager.CreateAsync(new Role { Name = "User" });

                await roleManager.CreateAsync(new Role { Name = "Admin" });

                await userManager.AddToRoleAsync(await userManager.FindByNameAsync("incorcadit"), "User");

                await userManager.AddToRoleAsync(await userManager.FindByNameAsync("admin"), "User");

                await userManager.AddToRoleAsync(await userManager.FindByNameAsync("admin"), "Admin");

                await context.SaveChangesAsync();
            }
        }
예제 #10
0
 public async Task Complete()
 {
     await dbContext.SaveChangesAsync();
 }
예제 #11
0
        public static async Task SeedArticles(ArticleDbContext context)
        {
            if (!context.Articles.Any())
            {
                var user = context.Users.Include(u => u.Writer).ThenInclude(w => w.Articles).First(u => u.UserName == "incorcadit");

                user.Writer.Articles.Add(new Article
                {
                    Title       = "New NBA Season is postponed for half of a year",
                    Overview    = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim nulla aliquet porttitor lacus luctus accumsan tortor. Risus at ultrices mi tempus imperdiet. Eget gravida cum sociis natoque penatibus et magnis dis parturient. Metus dictum at tempor commodo ullamcorper a.",
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Tempus quam pellentesque nec nam aliquam sem et. Rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque. Tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Quis lectus nulla at volutpat diam. Vestibulum mattis ullamcorper velit sed ullamcorper. Nibh sit amet commodo nulla facilisi nullam vehicula. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum. Purus viverra accumsan in nisl. Lorem sed risus ultricies tristique nulla.",
                    Tags        = "#nba#newseason",
                    Topic       = context.Topics.First(t => t.TopicName == "Basketball"),
                    WriterId    = user.Writer.Id,
                    PublishDate = new System.DateTime(2019, 7, 24, 17, 45, 0)
                });
                user.Writer.Articles.Add(new Article
                {
                    Title       = "Shakil O'Neill will take part in 2020 all-start weekend",
                    Overview    = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim nulla aliquet porttitor lacus luctus accumsan tortor. Risus at ultrices mi tempus imperdiet. Eget gravida cum sociis natoque penatibus et magnis dis parturient. Metus dictum at tempor commodo ullamcorper a.",
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Tempus quam pellentesque nec nam aliquam sem et. Rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque. Tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Quis lectus nulla at volutpat diam. Vestibulum mattis ullamcorper velit sed ullamcorper. Nibh sit amet commodo nulla facilisi nullam vehicula. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum. Purus viverra accumsan in nisl. Lorem sed risus ultricies tristique nulla.",
                    Tags        = "#allstart#legends#shakil#nba#danks",
                    Topic       = context.Topics.First(t => t.TopicName == "Basketball"),
                    WriterId    = user.Writer.Id,
                    PublishDate = new System.DateTime(2020, 3, 17, 13, 21, 0)
                });
                user.Writer.Articles.Add(new Article
                {
                    Title       = "Functional interfaces in Java",
                    Overview    = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim nulla aliquet porttitor lacus luctus accumsan tortor. Risus at ultrices mi tempus imperdiet. Eget gravida cum sociis natoque penatibus et magnis dis parturient. Metus dictum at tempor commodo ullamcorper a.",
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Tempus quam pellentesque nec nam aliquam sem et. Rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque. Tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Quis lectus nulla at volutpat diam. Vestibulum mattis ullamcorper velit sed ullamcorper. Nibh sit amet commodo nulla facilisi nullam vehicula. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum. Purus viverra accumsan in nisl. Lorem sed risus ultricies tristique nulla.",
                    Tags        = "#java#lambdas#it#programming",
                    Topic       = context.Topics.First(t => t.TopicName == "IT"),
                    WriterId    = user.Writer.Id,
                    PublishDate = new System.DateTime(2019, 5, 17, 13, 21, 0)
                });
                user.Writer.Articles.Add(new Article
                {
                    Title       = "Doublespending in 5 minutes",
                    Overview    = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim nulla aliquet porttitor lacus luctus accumsan tortor. Risus at ultrices mi tempus imperdiet. Eget gravida cum sociis natoque penatibus et magnis dis parturient. Metus dictum at tempor commodo ullamcorper a.",
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Tempus quam pellentesque nec nam aliquam sem et. Rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque. Tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Quis lectus nulla at volutpat diam. Vestibulum mattis ullamcorper velit sed ullamcorper. Nibh sit amet commodo nulla facilisi nullam vehicula. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum. Purus viverra accumsan in nisl. Lorem sed risus ultricies tristique nulla.",
                    Tags        = "#bitcoin#crypto#hacking#programming",
                    Topic       = context.Topics.First(t => t.TopicName == "IT"),
                    WriterId    = user.Writer.Id,
                    PublishDate = new System.DateTime(2019, 9, 22, 17, 21, 0)
                });
                user.Writer.Articles.Add(new Article
                {
                    Title       = "Cryptomarket in 2020",
                    Overview    = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim nulla aliquet porttitor lacus luctus accumsan tortor. Risus at ultrices mi tempus imperdiet. Eget gravida cum sociis natoque penatibus et magnis dis parturient. Metus dictum at tempor commodo ullamcorper a.",
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Tempus quam pellentesque nec nam aliquam sem et. Rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque. Tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Quis lectus nulla at volutpat diam. Vestibulum mattis ullamcorper velit sed ullamcorper. Nibh sit amet commodo nulla facilisi nullam vehicula. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum. Purus viverra accumsan in nisl. Lorem sed risus ultricies tristique nulla.",
                    Tags        = "#bitcoin#crypto#it#2020#cryptomarket",
                    Topic       = context.Topics.First(t => t.TopicName == "IT"),
                    WriterId    = user.Writer.Id,
                    PublishDate = new System.DateTime(2019, 9, 22, 17, 28, 0)
                });
                user.Writer.Articles.Add(new Article
                {
                    Title       = "Scrapping with Scrapy",
                    Overview    = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim nulla aliquet porttitor lacus luctus accumsan tortor. Risus at ultrices mi tempus imperdiet. Eget gravida cum sociis natoque penatibus et magnis dis parturient. Metus dictum at tempor commodo ullamcorper a.",
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Tempus quam pellentesque nec nam aliquam sem et. Rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque. Tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Quis lectus nulla at volutpat diam. Vestibulum mattis ullamcorper velit sed ullamcorper. Nibh sit amet commodo nulla facilisi nullam vehicula. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum. Purus viverra accumsan in nisl. Lorem sed risus ultricies tristique nulla.",
                    Tags        = "#it#programming#scrapping#python",
                    Topic       = context.Topics.First(t => t.TopicName == "IT"),
                    WriterId    = user.Writer.Id,
                    PublishDate = new System.DateTime(2019, 4, 22, 17, 22, 0)
                });
                user.Writer.Articles.Add(new Article
                {
                    Title       = "Luckin Coffee: Scandal-hit chain raided by regulators in China",
                    Overview    = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim nulla aliquet porttitor lacus luctus accumsan tortor. Risus at ultrices mi tempus imperdiet. Eget gravida cum sociis natoque penatibus et magnis dis parturient. Metus dictum at tempor commodo ullamcorper a.",
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Tempus quam pellentesque nec nam aliquam sem et. Rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque. Tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Quis lectus nulla at volutpat diam. Vestibulum mattis ullamcorper velit sed ullamcorper. Nibh sit amet commodo nulla facilisi nullam vehicula. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum. Purus viverra accumsan in nisl. Lorem sed risus ultricies tristique nulla.",
                    Tags        = "#business#china#coffee#foodchain",
                    Topic       = context.Topics.First(t => t.TopicName == "Business"),
                    WriterId    = user.Writer.Id,
                    PublishDate = new System.DateTime(2019, 6, 18, 17, 22, 0)
                });
                user.Writer.Articles.Add(new Article
                {
                    Title       = "Stressed firms look for better ways to source products",
                    Overview    = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim nulla aliquet porttitor lacus luctus accumsan tortor. Risus at ultrices mi tempus imperdiet. Eget gravida cum sociis natoque penatibus et magnis dis parturient. Metus dictum at tempor commodo ullamcorper a.",
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Tempus quam pellentesque nec nam aliquam sem et. Rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque. Tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Quis lectus nulla at volutpat diam. Vestibulum mattis ullamcorper velit sed ullamcorper. Nibh sit amet commodo nulla facilisi nullam vehicula. Turpis egestas pretium aenean pharetra magna ac placerat vestibulum. Purus viverra accumsan in nisl. Lorem sed risus ultricies tristique nulla.",
                    Tags        = "#business#china#coffee#foodchain",
                    Topic       = context.Topics.First(t => t.TopicName == "Business"),
                    WriterId    = user.Writer.Id,
                    PublishDate = new System.DateTime(2020, 9, 28, 21, 52, 0)
                });

                await context.SaveChangesAsync();
            }
        }
예제 #12
0
        public static async Task SeedComments(ArticleDbContext context)
        {
            if (!context.Comments.Any())
            {
                var article  = context.Articles.Include(a => a.Comments).First();
                var reviewer = context.Users.Include(u => u.Reviewer).First(u => u.UserName == "admin").Reviewer;

                article.Comments.Add(new Comment
                {
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et.",
                    Article     = article,
                    Reviewer    = reviewer,
                    PublishDate = new DateTime(2019, 8, 12, 19, 5, 0)
                });
                article.Comments.Add(new Comment
                {
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et.",
                    Article     = article,
                    Reviewer    = reviewer,
                    PublishDate = new DateTime(2020, 8, 4, 18, 11, 0)
                });
                article.Comments.Add(new Comment
                {
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et.",
                    Article     = article,
                    Reviewer    = reviewer,
                    PublishDate = new DateTime(2019, 12, 25, 11, 2, 0)
                });
                article.Comments.Add(new Comment
                {
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et.",
                    Article     = article,
                    Reviewer    = reviewer,
                    PublishDate = new DateTime(2020, 3, 17, 17, 5, 0)
                });
                article.Comments.Add(new Comment
                {
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et.",
                    Article     = article,
                    Reviewer    = reviewer,
                    PublishDate = new DateTime(2019, 10, 12, 22, 51, 0)
                });
                article.Comments.Add(new Comment
                {
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et.",
                    Article     = article,
                    Reviewer    = reviewer,
                    PublishDate = new DateTime(2019, 8, 22, 11, 15, 0)
                });
                article.Comments.Add(new Comment
                {
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et.",
                    Article     = article,
                    Reviewer    = reviewer,
                    PublishDate = new DateTime(2019, 8, 12, 19, 45, 0)
                });
                article.Comments.Add(new Comment
                {
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et.",
                    Article     = article,
                    Reviewer    = reviewer,
                    PublishDate = new DateTime(2019, 11, 12, 19, 5, 0)
                });
                article.Comments.Add(new Comment
                {
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et.",
                    Article     = article,
                    Reviewer    = reviewer,
                    PublishDate = new DateTime(2019, 8, 12, 19, 5, 0)
                });
                article.Comments.Add(new Comment
                {
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et.",
                    Article     = article,
                    Reviewer    = reviewer,
                    PublishDate = new DateTime(2019, 8, 12, 19, 5, 0)
                });
                article.Comments.Add(new Comment
                {
                    Content     = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sit amet consectetur adipiscing elit ut. Ut enim blandit volutpat maecenas volutpat blandit aliquam etiam. Euismod in pellentesque massa placerat duis ultricies lacus sed. Et malesuada fames ac turpis egestas maecenas pharetra. Vehicula ipsum a arcu cursus. Leo a diam sollicitudin tempor id eu nisl. Nibh praesent tristique magna sit amet purus gravida. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Pellentesque id nibh tortor id aliquet lectus proin nibh. Aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Urna neque viverra justo nec ultrices dui. Placerat in egestas erat imperdiet sed. Vitae suscipit tellus mauris a diam .Sagittis vitae et leo duis ut diam quam. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et.",
                    Article     = article,
                    Reviewer    = reviewer,
                    PublishDate = new DateTime(2019, 8, 12, 19, 5, 0)
                });

                await context.SaveChangesAsync();
            }
        }