using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.RazorPages; using Microsoft.EntityFrameworkCore; using CoreWiki.Models; namespace CoreWiki.Pages { public class DeleteModel : PageModel { private readonly CoreWiki.Models.ApplicationDbContext _context; public DeleteModel(CoreWiki.Models.ApplicationDbContext context) { _context = context; } [BindProperty] public Article Article { get; set; } = default!; public async Task OnGetAsync(string slug) { if (slug == "home-page") { return NotFound(); } var article = await _context.Articles.FirstOrDefaultAsync(a => a.Slug == slug); if (article == null) { return NotFound(); } Article = article; return Page(); } public async Task OnPostAsync(string slug) { if (slug == "home-page") { return NotFound(); } var article = await _context.Articles.FirstOrDefaultAsync(a => a.Slug == slug); if (article == null) return NotFound(); Article = article; _context.Articles.Remove(Article); await _context.SaveChangesAsync(); return Redirect("/"); } } }