private List <Book> SortByTags(List <Book> books, string tags, int selectionSize) { var sortedList = books.Where(book => TagsUtils.NormalizeTags(tags).All(tag => book.Tags.Find(x => x.Value == tag) != null)) .Take(selectionSize) .ToList(); return(sortedList); }
private List <Tag> GetTagsToAdd(string inputTags) { var inputTextArr = TagsUtils.NormalizeTags(inputTags); var result = new List <Tag>(); foreach (var tag in inputTextArr) { Tag foundTag = dbContext.Tags.Find(tag); if (foundTag != null) { result.Add(foundTag); } else { var newTag = new Tag { Value = tag }; result.Add(newTag); dbContext.Tags.Add(newTag); } } dbContext.SaveChanges(); return(result); }