diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/DB.cs | 17 | ||||
| -rw-r--r-- | src/Program.cs | 3 |
2 files changed, 16 insertions, 4 deletions
@@ -2,12 +2,25 @@ using Microsoft.EntityFrameworkCore; namespace BlobBin; -public class DB : DbContext +public sealed class DB : DbContext { - public DB(DbContextOptions<DB> options) : base(options) { } + private bool _created; + + public DB(DbContextOptions<DB> options) : base(options) { + if (!_created) { + _created = true; + Database.EnsureDeleted(); + Database.EnsureCreated(); + } + } public DbSet<File> Files { get; set; } public DbSet<Paste> Pastes { get; set; } + + protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { + optionsBuilder.UseSqlite("data source = main.db"); + base.OnConfiguring(optionsBuilder); + } } public class UploadEntityBase diff --git a/src/Program.cs b/src/Program.cs index 01ca76b..89a8e02 100644 --- a/src/Program.cs +++ b/src/Program.cs @@ -1,10 +1,9 @@ global using BlobBin; using IOL.Helpers; -using Microsoft.EntityFrameworkCore; using File = BlobBin.File; var builder = WebApplication.CreateBuilder(args); -builder.Services.AddDbContext<DB>(opt => opt.UseSqlite("data source=main.db")); +builder.Services.AddDbContext<DB>(); var app = builder.Build(); app.UseFileServer(); |
