.net Core Api Controller Example

5 min read Jun 03, 2024
.net Core Api Controller Example

Développez une API RESTful avec ASP.NET Core : Un exemple de contrôleur

L'utilisation d'ASP.NET Core pour construire des API RESTful est une pratique courante, offrant aux développeurs un framework robuste et flexible. Cet article présente un exemple simple d'un contrôleur d'API dans ASP.NET Core qui illustre les concepts clés de la construction d'une API RESTful.

Créer un nouveau projet ASP.NET Core

Commencez par créer un nouveau projet ASP.NET Core. Vous pouvez utiliser Visual Studio ou la ligne de commande pour ce faire. Sélectionnez le modèle "API Web ASP.NET Core" lors de la création du projet.

Définir un contrôleur

Un contrôleur est une classe qui gère les requêtes HTTP entrantes et renvoie des réponses. Définissez un nouveau contrôleur nommé ProductController dans votre projet. Ce contrôleur sera responsable de la gestion des opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) pour les produits.

using Microsoft.AspNetCore.Mvc;

namespace MyApi.Controllers
{
    [ApiController]
    [Route("[controller]")]
    public class ProductController : ControllerBase
    {
        // ... Code du contrôleur ...
    }
}

Définir des actions de contrôleur

Chaque méthode dans un contrôleur représente une action qui peut être appelée par une requête HTTP. Par exemple, vous pouvez définir des actions pour obtenir une liste de produits, obtenir un produit spécifique, créer un nouveau produit, mettre à jour un produit existant et supprimer un produit.

public class ProductController : ControllerBase
{
    // Retourne une liste de produits
    [HttpGet]
    public IActionResult GetProducts()
    {
        // Logique pour récupérer les produits
        var products = GetProductsFromDatabase(); // Remplacez par votre logique de récupération des données
        return Ok(products);
    }

    // Retourne un produit spécifique
    [HttpGet("{id}")]
    public IActionResult GetProduct(int id)
    {
        // Logique pour récupérer le produit avec l'identifiant spécifié
        var product = GetProductFromDatabase(id); // Remplacez par votre logique de récupération des données
        if (product == null)
        {
            return NotFound();
        }
        return Ok(product);
    }

    // Crée un nouveau produit
    [HttpPost]
    public IActionResult CreateProduct([FromBody] Product product)
    {
        // Logique pour créer un nouveau produit
        CreateProductInDatabase(product); // Remplacez par votre logique d'insertion des données
        return CreatedAtAction("GetProduct", new { id = product.Id }, product);
    }

    // Met à jour un produit existant
    [HttpPut("{id}")]
    public IActionResult UpdateProduct(int id, [FromBody] Product product)
    {
        // Logique pour mettre à jour un produit existant
        UpdateProductInDatabase(id, product); // Remplacez par votre logique de mise à jour des données
        return NoContent();
    }

    // Supprime un produit existant
    [HttpDelete("{id}")]
    public IActionResult DeleteProduct(int id)
    {
        // Logique pour supprimer un produit existant
        DeleteProductFromDatabase(id); // Remplacez par votre logique de suppression des données
        return NoContent();
    }
}

Attributs de routage

Les attributs [ApiController] et [Route("[controller]")] définissent le routage de base pour le contrôleur. [ApiController] active les conventions d'API Web et [Route("[controller]")] spécifie que le routage se fera à partir du nom du contrôleur. Les attributs [HttpGet], [HttpPost], [HttpPut], [HttpDelete] définissent les méthodes HTTP prises en charge par chaque action.

Conclusion

Cet exemple simple illustre les fondamentaux de la création d'un contrôleur d'API dans ASP.NET Core. Il vous permet de commencer à construire des API RESTful avec ASP.NET Core, en gérant les opérations CRUD et en utilisant des attributs de routage. N'hésitez pas à expérimenter et à adapter cet exemple à vos besoins spécifiques.

Featured Posts