Ciele
- Implementujte servisné komponenty použitím Entity Framework Core.
Úvod
Vašou úlohou na dnešnom cvičení je implementovať služby prostredníctvom technológie EntityFramework Core vďaka ktorej môžeme jednoduchšie ukladať a sprístupňovať údaje z relačných údajových zdrojov-databáz.
Postup
Krok 1
Pridajte do projektu závislosť na EntityFramework Core prostredníctom Nuget Package Manager Console.
Zvoľte váš projekt s jadrom hry ako Startup Project (kontextové menu v Solution Explorer nad projektom a v ňom zvoľte Set as Startup Project).
V Package Manager Console zvoľte ako Default Project váš projekt s jadrom hry. V konzole napíšte:
Install-Package Microsoft.EntityFrameworkCore.SqlServer
Install-Package Microsoft.EntityFrameworkCore.Tools
Vytvorte triedu DbContext
namespace NPuzzle
{
public class NPuzzleDbContext : DbContext
{
public DbSet<Score> Scores{ get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer(@"Server=(localdb)\mssqllocaldb;Database=NPuzzle;Trusted_Connection=True;");
}
}
}
Pridajte do entitných tried primárne kľúče.
public class Score
{
public int Id { get; set; }
...
Pripravte migráciu databázy a vzkonajte ju prostredníctvom Nuget Package Manager Console. V konzole napíšte:
Add-Migration Mig1
Update-Database
Presvedčte sa, že v databáze vznikli tabuľky.
Úloha 1.1
Implementujte všetky servisné komponenty prostredníctvom technológie Entity Framework Core - pre skóre, komentáre a hodnotenie.
Pri implementácii servisných komponentov sa inšpirujte verziou hry NPuzzle z gitu: https://git.kpi.fei.tuke.sk/jaroslav.poruban/NPuzzle2020
Zdroje
- Entity Framework Core https://docs.microsoft.com/en-us/ef/core/
- Getting Started with EF Core on .NET Core Console App with a New database https://docs.microsoft.com/en-us/ef/core/get-started/netcore/new-db-sqlite