using FreeTubeSync.Model; using Microsoft.EntityFrameworkCore; namespace FreeTubeSync.Database; public class DataContext : DbContext { public DataContext(DbContextOptions options) : base(options) { } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { optionsBuilder.UseSqlite("Data Source=FreeTubeSync.db"); } protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.Entity() .ToTable("Settings") .HasKey(s => s._id); modelBuilder.Entity() .Property(s => s.ValueJson) .HasColumnName("Value") .IsRequired(); } public DbSet Histories { get; set; } public DbSet Playlists { get; set; } public DbSet Profiles { get; set; } public DbSet SearchHistories { get; set; } public DbSet Settings { get; set; } public DbSet Subscriptions { get; set; } public DbSet