Často máme existující strukturu databáze s daty (database first). Pro přístup k této db potřebujeme modelové třídy, které budou představovat data z DB. Vygenerování modelových tříd z DB tabulek se nazývá scaffolding. Dnes si ukážeme jak toho dosáhnout v net6, Entity Framework 6 pro MySql databázi.
- Přes Package Manager instalujeme:
Install-Package Microsoft.EntityFrameworkCore.Design -Version 6.0.1
2) vygenerujeme entity z tabulek DB:
dotnet ef dbcontext scaffold "server=localhost;user=root;password=xxx;database=app_cz" "Pomelo.EntityFrameworkCore.MySql" --output-dir Models -f
Tím pro každou tabulku vygenerujeme odpovídající modelovou třídu.
Nyní přidáme tyto modelové třídy do DbContextu, přes který budeme získávat data:
public DbSet<User> Users { get; set; } public DbSet<Event> Events { get; set; } //... public DbSet<Log> Logs { get; set; }
Získáme všechny uživatele:
return _dataContext.Users.ToList();