AppDbContext.cs 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using Application.Abstractions.Data;
  2. using Domain.Entities.Common;
  3. using Domain.Entities.Members;
  4. using Domain.Entities.Members.Logs;
  5. using Domain.Entities.Page;
  6. using Domain.Entities.Page.Banner;
  7. using Domain.Entities.Page.Faq;
  8. using Domain.Entities.Wallets;
  9. using Microsoft.EntityFrameworkCore;
  10. namespace Infrastructure.Persistence
  11. {
  12. public sealed class AppDbContext : DbContext, IAppDbContext
  13. {
  14. public AppDbContext(DbContextOptions<AppDbContext> options) : base(options) { }
  15. public DbSet<Config> Config { get; set; }
  16. public DbSet<Document> Document { get; set; }
  17. public DbSet<Popup> Popup { get; set; }
  18. public DbSet<FaqCategory> FaqCategory { get; set; }
  19. public DbSet<FaqItem> FaqItem { get; set; }
  20. public DbSet<BannerPosition> BannerPosition { get; set; }
  21. public DbSet<BannerItem> BannerItem { get; set; }
  22. // Member Logs
  23. public DbSet<Member> Member { get; set; }
  24. public DbSet<MemberGrade> MemberGrade { get; set; }
  25. public DbSet<MemberApprove> MemberApprove { get; set; }
  26. public DbSet<MemberLoginLog> MemberLoginLog { get; set; }
  27. public DbSet<MemberEmailChangeLog> MemberEmailChangeLog { get; set; }
  28. public DbSet<MemberNameChangeLog> MemberNameChangeLog { get; set; }
  29. public DbSet<MemberSummaryChangeLog> MemberSummaryChangeLog { get; set; }
  30. public DbSet<MemberIntroChangeLog> MemberIntroChangeLog { get; set; }
  31. // Wallet
  32. public DbSet<Wallet> Wallet { get; set; }
  33. public DbSet<WalletTransaction> WalletTransaction { get; set; }
  34. // Channel
  35. public DbSet<Channel> Channel { get; set; }
  36. protected override void OnModelCreating(ModelBuilder modelBuilder)
  37. {
  38. // Apply all configurations from the current assembly
  39. modelBuilder.ApplyConfigurationsFromAssembly(typeof(AppDbContext).Assembly);
  40. }
  41. }
  42. }