Delete thumb file
This commit is contained in:
parent
afb8a23588
commit
0f5cbb4d87
@ -6,104 +6,111 @@ using MyDarling.Models;
|
||||
|
||||
namespace MyDarling.Controllers
|
||||
{
|
||||
[Authorize]
|
||||
public class FigureController : Controller
|
||||
{
|
||||
private DataContext context;
|
||||
private IWebHostEnvironment environment;
|
||||
public FigureController(DataContext context, IWebHostEnvironment environment)
|
||||
{
|
||||
this.context = context;
|
||||
this.environment = environment;
|
||||
}
|
||||
[Authorize]
|
||||
public class FigureController : Controller
|
||||
{
|
||||
private DataContext context;
|
||||
private IWebHostEnvironment environment;
|
||||
public FigureController(DataContext context, IWebHostEnvironment environment)
|
||||
{
|
||||
this.context = context;
|
||||
this.environment = environment;
|
||||
}
|
||||
|
||||
public async Task<IActionResult> Details(string id)
|
||||
{
|
||||
var figure = await context.Figures
|
||||
.Where(f => f.Id.Equals(id))
|
||||
.FirstOrDefaultAsync();
|
||||
if (figure == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
var product = await context.Products
|
||||
.Where(b => b.Figures.Contains(figure))
|
||||
.FirstOrDefaultAsync();
|
||||
if (product == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
return View(figure);
|
||||
}
|
||||
public async Task<IActionResult> Details(string id)
|
||||
{
|
||||
var figure = await context.Figures
|
||||
.Where(f => f.Id.Equals(id))
|
||||
.FirstOrDefaultAsync();
|
||||
if (figure == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
var product = await context.Products
|
||||
.Where(b => b.Figures.Contains(figure))
|
||||
.FirstOrDefaultAsync();
|
||||
if (product == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
return View(figure);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public async Task<IActionResult> Edit(string id)
|
||||
{
|
||||
if (id == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
[HttpPost]
|
||||
public async Task<IActionResult> Edit(string id)
|
||||
{
|
||||
if (id == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
|
||||
var figure = await context.Figures
|
||||
.Where(f => f.Id.Equals(id))
|
||||
.FirstOrDefaultAsync();
|
||||
var figure = await context.Figures
|
||||
.Where(f => f.Id.Equals(id))
|
||||
.FirstOrDefaultAsync();
|
||||
|
||||
if (figure == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
if (figure == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
|
||||
var product = await context.Products
|
||||
.Where(b => b.Figures.Contains(figure))
|
||||
.FirstOrDefaultAsync();
|
||||
var product = await context.Products
|
||||
.Where(b => b.Figures.Contains(figure))
|
||||
.FirstOrDefaultAsync();
|
||||
|
||||
if (await TryUpdateModelAsync<Figure>(
|
||||
figure,
|
||||
"",
|
||||
f => f.Description))
|
||||
{
|
||||
try
|
||||
{
|
||||
await context.SaveChangesAsync();
|
||||
return RedirectToAction("Details", "Products", new { Id = product?.Id });
|
||||
}
|
||||
catch (SystemException)
|
||||
{
|
||||
ModelState.AddModelError("", "Unable to save changes");
|
||||
}
|
||||
}
|
||||
return View(figure);
|
||||
}
|
||||
if (await TryUpdateModelAsync<Figure>(
|
||||
figure,
|
||||
"",
|
||||
f => f.Description))
|
||||
{
|
||||
try
|
||||
{
|
||||
await context.SaveChangesAsync();
|
||||
return RedirectToAction("Details", "Products", new { Id = product?.Id });
|
||||
}
|
||||
catch (SystemException)
|
||||
{
|
||||
ModelState.AddModelError("", "Unable to save changes");
|
||||
}
|
||||
}
|
||||
return View(figure);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public async Task<ActionResult> Delete(string id)
|
||||
{
|
||||
var figure = await context.Figures.FindAsync(id);
|
||||
if (figure == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
var product = await context.Products
|
||||
.Where(b => b.Figures.Contains(figure))
|
||||
.FirstAsync();
|
||||
[HttpPost]
|
||||
public async Task<ActionResult> Delete(string id)
|
||||
{
|
||||
var figure = await context.Figures.FindAsync(id);
|
||||
if (figure == null)
|
||||
{
|
||||
return NotFound();
|
||||
}
|
||||
var product = await context.Products
|
||||
.Where(b => b.Figures.Contains(figure))
|
||||
.FirstAsync();
|
||||
|
||||
try
|
||||
{
|
||||
string filePath = $"/Content/{product.Id}/{figure.Id}.jpg";
|
||||
FileInfo figureFile = new FileInfo(environment.WebRootPath + filePath);
|
||||
if (figureFile.Exists)
|
||||
{
|
||||
figureFile.Delete();
|
||||
}
|
||||
try
|
||||
{
|
||||
string filePath = $"/Content/{product.Id}/{figure.Id}.jpg";
|
||||
FileInfo figureFile = new FileInfo(environment.WebRootPath + filePath);
|
||||
if (figureFile.Exists)
|
||||
{
|
||||
figureFile.Delete();
|
||||
}
|
||||
|
||||
context.Figures.Remove(figure);
|
||||
await context.SaveChangesAsync();
|
||||
return RedirectToAction("Details", "Products", new { Id = product?.Id });
|
||||
}
|
||||
catch (DbUpdateException)
|
||||
{
|
||||
return RedirectToAction(nameof(Delete), new { id = id, saveChangesError = true });
|
||||
}
|
||||
}
|
||||
}
|
||||
string thumbFilePath = $"/Content/{product.Id}/{figure.Id}_thumb.jpg";
|
||||
FileInfo thumbFile = new FileInfo(environment.WebRootPath + thumbFilePath);
|
||||
if (thumbFile.Exists)
|
||||
{
|
||||
thumbFile.Delete();
|
||||
}
|
||||
|
||||
context.Figures.Remove(figure);
|
||||
await context.SaveChangesAsync();
|
||||
return RedirectToAction("Details", "Products", new { Id = product?.Id });
|
||||
}
|
||||
catch (DbUpdateException)
|
||||
{
|
||||
return RedirectToAction(nameof(Delete), new { id = id, saveChangesError = true });
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user