public Material SeedMaterial( Category category, string title, int commentsCount, ParagraphsCount materialParagraphsCount, ParagraphsCount commentsParagraphsCount) { var publishDate = dataContainer.IterateCommentPublishDate(); int id = dataContainer.NextMaterialId(); Material material = new Material { Id = id, Title = title, Text = GetRandomText(materialParagraphsCount.Min, materialParagraphsCount.Max), AuthorId = dataContainer.GetRandomUserId(), CategoryId = category.Id, PublishDate = publishDate, LastActivity = publishDate, SortNumber = id }; if (commentsCount > 0) { var comments = MakeComments(material, commentsCount, commentsParagraphsCount); material.LastActivity = comments.OrderByDescending(x => x.PublishDate).First().PublishDate; material.CommentsCount = comments.Count; dataContainer.Comments.AddRange(comments); } dataContainer.Materials.Add(material); return(material); }
public Material SeedMaterial(Category category, string title, int commentsCount, string firstLine, string lineElement, LinesCount linesCount) { var publishDate = dataContainer.IterateCommentPublishDate(); int linesCountCurrent = ran.Next(linesCount.Min, linesCount.Max); int id = dataContainer.NextMaterialId(); Material material = new Material { Id = id, Title = title, Text = MakeSeedText(lineElement, 8, linesCountCurrent, firstLine), AuthorId = dataContainer.GetRandomUserId(), CategoryId = category.Id, PublishDate = publishDate, LastActivity = publishDate, SortNumber = id }; var(preview, description) = MaterialExtensions.MakePreviewAndDescription(material.Text, MaterialDescriptionLength, MaterialPreviewLength); material.Preview = preview; SectionType sectionType = category.GetSectionType(); if (sectionType != null && sectionType.Name == SectionTypeNames.Articles) { material.Description = "Описание материала: " + material.Title; } else { material.Description = description; } if (commentsCount > 0) { IList <Comment> comments = MakeComments(material, commentsCount); //Comment last = comments.OrderByDescending(x=>x.PublishDate).First(); //material.SetLastComment(last); material.LastActivity = comments.OrderByDescending(x => x.PublishDate).First().PublishDate; material.CommentsCount = comments.Count; dataContainer.Comments.AddRange(comments); } dataContainer.Materials.Add(material); return(material); }
public Material SeedMaterial( Category category, string title, int commentsCount, string firstLine, string lineElement, LinesCount linesCount) { var publishDate = dataContainer.IterateCommentPublishDate(); int linesCountCurrent = ran.Next(linesCount.Min, linesCount.Max); int id = dataContainer.NextMaterialId(); Material material = new Material { Id = id, Title = title, Text = MakeSeedText(lineElement, 8, linesCountCurrent, firstLine), AuthorId = dataContainer.GetRandomUserId(), CategoryId = category.Id, PublishDate = publishDate, LastActivity = publishDate, SortNumber = id }; switch (category.MaterialsSubTitleInputType) { case MaterialsSubTitleInputType.Manual: material.SubTitle = "Описание материала: " + material.Title; break; case MaterialsSubTitleInputType.Auto: material.SubTitle = MakeSubTitle.Do(new HtmlParser().Parse(material.Text), MaterialSubTitleLength); break; } if (commentsCount > 0) { IList <Comment> comments = MakeComments(material, commentsCount); //Comment last = comments.OrderByDescending(x=>x.PublishDate).First(); //material.SetLastComment(last); material.LastActivity = comments.OrderByDescending(x => x.PublishDate).First().PublishDate; material.CommentsCount = comments.Count; dataContainer.Comments.AddRange(comments); } dataContainer.Materials.Add(material); return(material); }