Comment écrire une API REST en C# en 30 minutes : pour les débutants

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Introduction : l'API REST en C# — c'est plus simple qu'il n'y paraît



Le développement d'applications web et de microservices est impensable sans API REST. Si vous débutez tout juste votre parcours en programmation, créer votre propre API peut sembler une tâche complexe. Cependant, avec le framework ASP.NET Core en C#, vous pourrez écrire un service RESTful fonctionnel en seulement 30 minutes.



Dans ce guide, nous allons créer pas à pas une API simple pour gérer une liste de tâches (Todo List). Vous apprendrez à configurer le projet, créer un modèle de données, un contrôleur et tester les points de terminaison. Pas de magie — seulement du code propre et des explications claires.



À la fin de l'article, vous disposerez d'une API entièrement fonctionnelle prenant en charge toutes les opérations CRUD de base (Create, Read, Update, Delete).



Étape 1 : Préparation de l'environnement et création du projet



Avant d'écrire du code, assurez-vous d'avoir installé les outils nécessaires :



  • .NET SDK (version 8.0 ou ultérieure) — à télécharger depuis le site officiel de Microsoft
  • Visual Studio (édition Community 2022) ou Visual Studio Code avec l'extension C#
  • Postman ou tout autre client REST pour les tests


Ouvrez un terminal (ou une invite de commandes) et exécutez la commande suivante pour créer un nouveau projet Web API :



dotnet new webapi -n TodoApicd TodoApi


Après la création du projet, ouvrez le dossier TodoApi dans votre IDE. La structure du projet contiendra plusieurs dossiers et fichiers, mais pour l'instant, trois éléments clés nous intéressent : Program.cs, Controllers et Models.



Étape 2 : Création du modèle de données



Un modèle est une classe qui décrit la structure des données de notre API. Pour une liste de tâches, nous aurons besoin de trois champs : un identifiant unique, un nom et un statut d'exécution.



Créez un nouveau dossier Models à la racine du projet, puis à l'intérieur, un fichier TodoItem.cs :



namespace TodoApi.Models;

public class TodoItem{ public int Id { get; set; } public string? Name { get; set; } public bool IsComplete { get; set; }}


Remarquez le point d'interrogation après string. Il indique que la propriété Name peut être null. C'est une bonne pratique pour éviter les avertissements du compilateur.



Étape 3 : Création du contrôleur et implémentation du CRUD



Un contrôleur est une classe qui traite les requêtes HTTP. Dans ASP.NET Core, les contrôleurs héritent de ControllerBase et utilisent des attributs pour le routage.



Créez un fichier TodoItemsController.cs dans le dossier Controllers :



using Microsoft.AspNetCore.Mvc;using TodoApi.Models;

namespace TodoApi.Controllers;

[ApiController][Route("api/[controller]")]public class TodoItemsController : ControllerBase{ private static List<TodoItem> _todoItems = new();

// GET: api/TodoItems [HttpGet] public ActionResult<IEnumerable<TodoItem>> GetTodoItems() { return _todoItems; }

// GET: api/TodoItems/1 [HttpGet("{id}")] public ActionResult<TodoItem> GetTodoItem(int id) { var item = _todoItems.FirstOrDefault(t => t.Id == id); if (item == null) return NotFound(); return item; }

// POST: api/TodoItems [HttpPost] public ActionResult<TodoItem> PostTodoItem(TodoItem item) { item.Id = _todoItems.Count + 1; _todoItems.Add(item); return CreatedAtAction(nameof(GetTodoItem), new { id = item.Id }, item); }

// PUT: api/TodoItems/1 [HttpPut("{id}")] public IActionResult PutTodoItem(int id, TodoItem updatedItem) { var existingItem = _todoItems.First

Blogs

Book Recommendations