using GsConfigTool.Models; using Microsoft.EntityFrameworkCore; using System.IO; namespace GsConfigTool.Data; public class AppDbContext : DbContext { public DbSet ServerProjects => Set(); protected override void OnConfiguring(DbContextOptionsBuilder options) { var folder = Path.Combine( Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "GsConfigTool"); Directory.CreateDirectory(folder); options.UseSqlite($"Data Source={Path.Combine(folder, "gsconfigtool.db")}"); } protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.Entity(e => { e.HasKey(p => p.Id); e.Property(p => p.Name).IsRequired().HasMaxLength(200); e.Property(p => p.Description).HasMaxLength(2000); e.Property(p => p.ConfigJson).IsRequired(); }); } }