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
Definire le impostazioni di cache a livello di controller in ASP.NET Core 7
Le novità di .NET 7 e C# 11
Utilizzare il tag HTML template
Creare automaticamente una issue di GitHub
Pubblicare la documentazione di un repository con GitHub Pages
Specificare il versioning nel path degli URL in ASP.NET Web API
Gestire i file esterni in una PWA
Scoprire le ottimizzazioni di Entity Framework Core in fase di scrittura di un solo record
Effettuare test di carico con Azure Load Testing
Utilizzare i nuovi piani dedicati di Azure Container Apps
Le novità di Entity Framework (Core) 7