public async Task <bool> DisLikePost(int userId, int id, CancellationToken cancellationToken) { var result = await TableNoTracking .SingleAsync(a => !a.VersionStatus.Equals(2) && a.UserId.Equals(userId) && a.PostId.Equals(id), cancellationToken); await DeleteAsync(result, cancellationToken); return(true); }
public async Task <ApiResult <List <PostDto> > > GetPostsInTag(string tag, CancellationToken cancellationToken) { Assert.NotNullArgument(tag, "آی دی پست اشتباه است"); var getTag = await TableNoTracking .SingleAsync(a => a.Name.Equals(tag), cancellationToken); var postTags = await _repositoryPostTag.TableNoTracking .Where(a => !a.VersionStatus.Equals(2) && a.TagId.Equals(getTag.Id)) .Select(a => a.PostId) .ToListAsync(cancellationToken); var list = await _repositoryPost.TableNoTracking .Where(a => !a.VersionStatus.Equals(2)) .Where(a => postTags.Contains(a.Id)) .ProjectTo <PostDto>(Mapper.ConfigurationProvider) .ToListAsync(cancellationToken); return(list); }