public async Task <IActionResult> RemoveArticle([FromBody] RemoveArticleRequest request)
        {
            return(await MethodWrapper(async (param) =>
            {
                Article article = await Context.Articles
                                  .Include(o => o.Images)
                                  .Include(o => o.Preview).FirstOrDefaultAsync(art => art.ID == param.Id);

                foreach (var image in article.Images)
                {
                    System.IO.File.Delete(HostingEnvironment.WebRootPath + image.LocalPath);
                }

                Context.Previews.Remove(article.Preview);
                Context.Images.RemoveRange(article.Images);

                await Context.SaveChangesAsync();

                Context.Articles.Remove(article);

                await Context.SaveChangesAsync();

                return Ok();
            }, request));
        }
 public async Task <IHttpActionResult> Remove([FromUri] RemoveArticleRequest request)
 {
     request.TenantUniqueId = Request.GetTenantUniqueId();
     return(Ok(await _mediator.Send(request)));
 }
Example #3
0
 public async Task <IHttpActionResult> Remove([FromUri] RemoveArticleRequest request)
 => Ok(await _mediator.Send(request));