Spesso, quando siamo nelle prime fasi di sviluppo di un nostro sito web, o stiamo definendo il contratto di una nuova API, fa comodo avere a disposizione una serie di dati di test per poter "visualizzare" il risultato delle varie chiamate.
Scrivere del codice boilerplate che si occupi di restituire questi dati di test è sicuramente tedioso. Fortunatamente, possiamo sfruttare la libreria GenFu per raggiungere lo stesso risultato in maniera estremamente più veloce.
Immaginiamo di avere definito una classe Person:
public class Person { public int Id { get; set; } public string FirstName { get; set; } public string LastName { get; set; } public string Email { get; set; } }
Il primo passo è aggiungere il package NuGet al nostro progetto:
Install-Package GenFu
A questo punto possiamo sfruttare la classe A per configurare il tipo di risposta che vogliamo:
[HttpGet] public ActionResult<IEnumerable<Person>> Get() { return A.ListOf<Person>(20); } [HttpGet("{id}")] public ActionResult<Person> GetById(int id) { return A.New<Person>(); }
In base al nome delle proprietà, GenFu sarà in grado di restituire dati "verosimili" per il tipo che abbiamo specificato:
In casi più complessi, il comportamento della libreria può essere anche configurato in maniera specifica. Per questo tipo di casistiche, è possibile consultare i vari tutorial disponibili sulla pagina ufficiale GitHub (https://github.com/MisterJames/GenFu).
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Gestione degli environment per il deploy con un workflow di GitHub
Cache policy su route groups di Minimal API in ASP.NET Core 7
Effettuare lo stream della risposta in ASP.NET Core tramite IAsyncEnumerable
gRPC con .NET
Utilizzare la session affinity con Azure Container Apps
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Implementare il throttling in ASP.NET Core
Utilizzare i primary constructor di C# per inizializzare le proprietà
Ottenere il contenuto di una cartella FTP con la libreria FluentFTP
Le novità di Angular: i miglioramenti alla CLI
Recuperare un elemento inserito nella cache del browser tramite API JavaScript
Configurare policy CORS in Azure Container Apps