From a4facbc7e1309f963b92d8a9f533d4c8c38a8658 Mon Sep 17 00:00:00 2001 From: Peace Date: Tue, 11 Jun 2024 11:49:17 +0900 Subject: [PATCH] post put delete --- WebApi/Controllers/PizzaController.cs | 41 +++++++++++++++++++++++++++ WebApi/WebApi.http | 35 ++++++++++++++++++++++- 2 files changed, 75 insertions(+), 1 deletion(-) diff --git a/WebApi/Controllers/PizzaController.cs b/WebApi/Controllers/PizzaController.cs index 016a53a..11c0d21 100644 --- a/WebApi/Controllers/PizzaController.cs +++ b/WebApi/Controllers/PizzaController.cs @@ -13,6 +13,8 @@ public class PizzaController : Controller } + // GET Action + [HttpGet] public ActionResult> GetAll() => PizzaService.GetAll(); @@ -25,4 +27,43 @@ public class PizzaController : Controller return pizza; } + + // POST Action + + [HttpPost] + public IActionResult Create(Pizza pizza) + { + PizzaService.Add(pizza); + return CreatedAtAction(nameof(Get), new { id = pizza.Id}, pizza); + } + + // PUT Action + + [HttpPut("{id}")] + public IActionResult Update(int id, Pizza pizza) + { + if (id != pizza.Id) + return BadRequest(); + + var existingPizza = PizzaService.Get(id); + if (existingPizza is null) + return NotFound(); + + PizzaService.Update(pizza); + + return NoContent(); + } + + // DELETE Action + [HttpDelete("{id}")] + public IActionResult Delete(int id) + { + var pizza = PizzaService.Get(id); + if (pizza is null) + return NotFound(); + + PizzaService.Delete(id); + + return NoContent(); + } } \ No newline at end of file diff --git a/WebApi/WebApi.http b/WebApi/WebApi.http index 937cc68..ec2e729 100644 --- a/WebApi/WebApi.http +++ b/WebApi/WebApi.http @@ -12,4 +12,37 @@ Accept: application/json GET {{WebApi_HostAddress}}/pizza/1 Accept: application/json -### \ No newline at end of file +### Pizza Post +POST {{WebApi_HostAddress}}/pizza/ +Content-Type: application/json + +{ + "name": "Hawaii", + "isGlutenFree": false +} + +### Pizza Post Check +GET {{WebApi_HostAddress}}/pizza/3 +Accept: application/json + +### Pizza Put + +PUT {{WebApi_HostAddress}}/pizza/3 +Content-Type: application/json + +{ + "id": 3, + "name": "Hawaiian", + "isGlutenFree": false +} + +### Pizza Put Check +GET {{WebApi_HostAddress}}/pizza/3 +Accept: application/json + +### Pizza Delete +DELETE {{WebApi_HostAddress}}/pizza/3 + +### Pizza Delete Check +GET {{WebApi_HostAddress}}/pizza/3 +Accept: application/json \ No newline at end of file