Это доступно для Core 2, да, но способ, которым я знаю, как это сделать, выглядит примерно так
[Route("api/[controller]")]
[ApiController]
public class AvailableRoomsController : ControllerBase
{
private readonly ApplicationContext _context;
public AvailableRoomsController(ApplicationContext context)
{
_context = context;
}
// GET: api/AvailableRooms
[HttpGet]
public async Task<ActionResult<IEnumerable<AvailableRoom>>> GetAvailableRooms()
{
return await _context.AvailableRooms.ToListAsync();
}
// POST: api/AvailableRooms
[HttpPost]
public async Task<ActionResult<AvailableRoom>> PostAvailableRoom(AvailableRoom availableRoom)
{
_context.AvailableRooms.Add(availableRoom);
await _context.SaveChangesAsync();
return CreatedAtAction("GetAvailableRoom", new { id = availableRoom.Id }, availableRoom);
}
[HttpPut] .... etc
}
Теперь в зависимости от того, какое действие REST вы указываете, и какую модель вы используете.отправьте в «api / AvailableRooms», если соответствующее действие существует, оно будет выбрано.
Visual Studio 2019, и я думаю, что 2017 может создать контроллер, такой как этот, автоматически, если щелкнуть правой кнопкой мыши папку «Контроллеры» и выбрать «Добавить-> Контроллер», а затем выбрать «Контроллер API с действиями, используя Entity Framework» и выбрать одинваших классов модели.