using Microsoft.EntityFrameworkCore; using System.IO; namespace UtopiaCanteenSystem.Data; /// /// Factory for creating AppDbContext instances. Used by RfidService and SyncService /// to avoid sharing a single context across async operations. /// public class DbContextFactory : IDbContextFactory { private static readonly DbContextOptions Options; static DbContextFactory() { var builder = new DbContextOptionsBuilder(); var dbPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "utopia_canteen.db"); builder.UseSqlite($"Data Source={dbPath}"); Options = builder.Options; } public AppDbContext CreateDbContext() => new AppDbContext(Options); }