LookingGlass/Data/LookingGlassContext.cs

25 lines
868 B
C#

using Microsoft.EntityFrameworkCore;
using static EnumStringValues.EnumExtensions;
namespace LookingGlass.Data
{
public class ApplicationContext(DbContextOptions<ApplicationContext> options)
: DbContext(options)
{
public DbSet<Moderation> Moderation { get; set; } = default!;
public DbSet<User> User { get; set; } = default!;
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder
.Entity<Moderation>()
.Property(m => m.Type)
.HasConversion(v => v.GetStringValue(), v => v.ParseToEnum<ModerationTypes>());
modelBuilder
.Entity<Moderation>()
.Property(m => m.ReasonType)
.HasConversion(v => v.GetStringValue(), v => v.ParseToEnum<ModerationReasons>());
}
}
}