Refactoring: Added interfaces, custom exceptions, UserManager unit tests, dependency injection/inversion; Regex match search by date, keywords

This commit is contained in:
Dimitar Byalkov
2023-06-06 17:52:36 +02:00
parent 180b261d37
commit 53c42a35d8
43 changed files with 668 additions and 211 deletions

View File

@@ -10,11 +10,17 @@ namespace WebApp.Pages
[Authorize]
public class DeleteAnnouncementModel : PageModel
{
private readonly IAnnouncementRepository _announcementRepository;
public DeleteAnnouncementModel(IAnnouncementRepository announcementRepository)
{
_announcementRepository = announcementRepository;
}
[BindProperty]
public int AnnouncementId { get; set; }
public void OnGet(int id)
{
AnnouncementManager announcementManager = new AnnouncementManager();
AnnouncementManager announcementManager = new AnnouncementManager(_announcementRepository);
if (id != null)
{
Announcement announcement = announcementManager.GetAnnouncementById(id);
@@ -26,7 +32,7 @@ namespace WebApp.Pages
}
public IActionResult OnPost()
{
AnnouncementManager announcementManager = new AnnouncementManager();
AnnouncementManager announcementManager = new AnnouncementManager(_announcementRepository);
announcementManager.DeleteAnnouncement(AnnouncementId);
return RedirectToPage("Announcements");
}