public async Task RemoveArticle(Guid articleId) { using (var articleSvc = new DAL.ArticleService()) { await articleSvc.RemoveAsync(articleId); } }
public async Task CreateArticle(string title, string content, Guid[] categoryIds, Guid userId) { using (IDAL.IArticleService articleSvc = new DAL.ArticleService()) { var article = new Models.Article() { Title = title, Content = content, UserId = userId }; await articleSvc.CreateAsync(article); Guid articleId = article.Id; using (var articleToCategroySvc = new DAL.ArticleToCategoryService()) { foreach (var categoryId in categoryIds) { await articleToCategroySvc.CreateAsync(new Models.ArticleToCategory() { ArticleId = articleId, BlogCategoryId = categoryId }, saved : false); } await articleToCategroySvc.Save(); } } }
public async Task <ArticleDto> GetOneArticleById(Guid articleId) { using (var articleSvc = new DAL.ArticleService()) { var data = await articleSvc.GetAllAsync().Include(m => m.User).Where(m => m.Id == articleId).Select(m => new Dto.ArticleDto() { Id = m.Id, Title = m.Title, Content = m.Content, CreateTime = m.CreateTime, GoodCount = m.GoodCount, BadCount = m.BadCount, Email = m.User.Email, ImagePath = m.User.ImagePath }).FirstAsync(); using (var articleToCategroySvc = new DAL.ArticleToCategoryService()) { var articleToCategroyData = articleToCategroySvc.GetAllAsync().Include(m => m.BlogCategory).Where(m => m.ArticleId == data.Id); data.CategoryIds = articleToCategroyData.Select(m => m.BlogCategoryId).ToArray(); data.CategoryNames = articleToCategroyData.Select(m => m.BlogCategory.CategoryName).ToArray(); return(data); } } }
public async Task <int> GetDataCount(Guid userId) { using (var articleSvc = new DAL.ArticleService()) { return(await articleSvc.GetAllAsync().CountAsync(m => m.UserId == userId)); } }
public async Task <List <ArticleDto> > GetAllArticlesByUserId(Guid userId, int pageIndex, int pageSize) { using (var articleSvc = new DAL.ArticleService()) { var list = await articleSvc.GetAllByPageOrderAsync(pageSize, pageIndex, false).Include(m => m.User).Where(m => m.UserId == userId).Select(m => new ArticleDto() { Id = m.Id, Title = m.Title, Content = m.Content, CreateTime = m.CreateTime, GoodCount = m.GoodCount, BadCount = m.BadCount, Email = m.User.Email, ImagePath = m.User.ImagePath }).ToListAsync(); using (var articleToCategroySvc = new DAL.ArticleToCategoryService()) { foreach (var item in list) { var articleToCategroyData = articleToCategroySvc.GetAllAsync().Include(m => m.BlogCategory).Where(m => m.ArticleId == item.Id); item.CategoryIds = articleToCategroyData.Select(m => m.BlogCategoryId).ToArray(); item.CategoryNames = articleToCategroyData.Select(m => m.BlogCategory.CategoryName).ToArray(); } return(list); } } }
public async Task GoodCount(Guid articleId) { using (var articleSvc = new DAL.ArticleService()) { var data = await articleSvc.GetOneByIdAsync(articleId); data.GoodCount += 1; await articleSvc.EditAsync(data); } }
public async Task CreateAsync(string title, string content, string email) { UserManager userMan = new UserManager(); var user = await userMan.GetUserByEmailAsync(email); using (DAL.ArticleService asv = new DAL.ArticleService()) { await asv.CreatAsync(new Models.Article { UserId = user.UserId, Title = title, Content = content, CreatTime = DateTime.Now }); } }
public PagedList <Dto.ArticleDto> GetAllArticle(int id = 0, int pagesize = 10) { using (DAL.ArticleService asv = new DAL.ArticleService()) { return(asv.GetAllWhere(m => true, false) .Include(m => m.User) .Select(m => new Dto.ArticleDto { Id = m.Id, Title = m.Title, Content = m.Content, UserEmail = m.User.Email, UserId = m.UserId, CreatTime = m.CreatTime }).ToPagedList(id, pagesize)); } }
public async Task <List <Dto.ArticleDto> > GetAllArticleAsync(int pageIndex = 0, int pagesize = 10) { using (DAL.ArticleService asv = new DAL.ArticleService()) { return(await asv.GetAllWhere(m => true, false, pageIndex, pagesize) .Include(m => m.User) .Select(m => new Dto.ArticleDto { Id = m.Id, Title = m.Title, Content = m.Content, UserEmail = m.User.Email, UserId = m.UserId, CreatTime = m.CreatTime }).ToListAsync()); } }