Пример #1
0
        /// <summary>
        /// 创建文章(自动创建一个默认分类)
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="title"></param>
        /// <param name="desc"></param>
        /// <param name="content"></param>
        /// <returns></returns>
        public async Task <Article> CreateArticleNoCategory(long userId, string title, string desc, string content)
        {
            var blogger = await _bloggerRepository.GetByIdAsync(userId);

            if (blogger == null)
            {
                return(null);
            }

            var category = await _categoryRepository.QueryUserDefaultCategoryAsync(userId);

            if (category == null)
            {
                category = new Category(userId, "默认分类");
                category.SetDefault();
                await _categoryRepository.AddAsync(category);
            }

            var article = new Article(userId, title, desc, content, new List <Category>
            {
                category
            });
            await _articleRepository.AddAsync(article);

            await UnitOfWork.SaveChangesAsync();

            return(article);
        }
Пример #2
0
        public async Task Handle(CreateArticleEvent notification, CancellationToken cancellationToken)
        {
            var blogger = await _bloggerRepository.GetByIdAsync(notification.BloggerId);

            if (blogger != null)
            {
                blogger.ArticleCount++;
            }
        }