cocktailweb/CocktailWeb/Data/DbDataContext.cs
2024-01-15 19:02:47 +01:00

37 lines
1.1 KiB
C#

using Microsoft.EntityFrameworkCore;
namespace CocktailWeb.Data
{
public class DbDataContext : DbContext
{
protected readonly IConfiguration _configuration;
public DbSet<Flasche> Flaschen { get; set; }
public DbSet<CocktailFlasche> CocktailFlaschen { get; set; }
public DbSet<Cocktail> Cocktails { get; set; }
public DbDataContext(IConfiguration configuration)
{
_configuration = configuration;
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlite(_configuration.GetConnectionString("CocktailDB"));
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Flasche>().ToTable("Flaschen");
modelBuilder.Entity<Flasche>().HasData(
new Flasche("Jägermeister") { Id = 1 },
new Flasche("Wodka") { Id = 2 }
);
// modelBuilder.Entity<Cocktail>().HasMany(c => c.CocktailFlaschen).WithOne(c => c.Cocktail).HasForeignKey(c => c.CocktailID);
}
}
}