SignalR working?

This commit is contained in:
TypoMustakes
2024-04-24 11:14:55 +02:00
parent ce81ab4070
commit e8c93cb348
7 changed files with 68 additions and 10 deletions

View File

@@ -3,6 +3,8 @@ using WD7UVN_HFT_2023241.Logic;
using System.Linq;
using System;
using WD7UVN_HFT_2023241.Models;
using Microsoft.AspNetCore.SignalR;
using WD7UVN_HFT_2023241.Endpoint.Services;
namespace WD7UVN_HFT_2023241.Endpoint
{
@@ -11,10 +13,12 @@ namespace WD7UVN_HFT_2023241.Endpoint
public class EmployeeController : ControllerBase
{
public ILogicServices LogicServices { get; set; }
IHubContext<SignalRHub> hub;
public EmployeeController(ILogicServices LogicServices)
public EmployeeController(ILogicServices LogicServices, IHubContext<SignalRHub> hub)
{
this.LogicServices = LogicServices;
this.hub = hub;
}
[HttpGet()]
@@ -47,19 +51,23 @@ namespace WD7UVN_HFT_2023241.Endpoint
public void PutEmployee([FromBody] Employee e)
{
LogicServices.CRUDOperations.CreateEmployee(e);
hub.Clients.All.SendAsync("EmployeeCreated", e);
}
[HttpPost()]
public void UpdateEmployee([FromBody] Employee e)
{
LogicServices.CRUDOperations.UpdateEmployee(e);
hub.Clients.All.SendAsync("EmployeeUpdated", e);
}
//HttpClient does not support sending data in the body of a DELETE request. Instead, we can send the data in the URL like with a GET request.
[HttpDelete("{id}")]
public void DeleteEmployee(int id)
{
Employee e = LogicServices.CRUDOperations.ReadEmployee(id);
LogicServices.CRUDOperations.DeleteEmployee(id);
hub.Clients.All.SendAsync("EmployeeDeleted", e);
}
}
}