53 lines
1.6 KiB
C#
53 lines
1.6 KiB
C#
using Microsoft.EntityFrameworkCore;
|
|
using Prefab.Catalog.Domain.Entities;
|
|
using Prefab.Data;
|
|
using Prefab.Handler;
|
|
|
|
namespace Prefab.Web.Data;
|
|
|
|
public class AppDb : PrefabDb, IPrefabDb,
|
|
Prefab.Catalog.Data.IModuleDb
|
|
{
|
|
public AppDb(DbContextOptions<AppDb> options, IHandlerContextAccessor accessor)
|
|
: base(options, accessor)
|
|
{
|
|
}
|
|
|
|
protected AppDb(DbContextOptions options, IHandlerContextAccessor accessor)
|
|
: base(options, accessor)
|
|
{
|
|
}
|
|
|
|
protected override void PrefabOnModelCreating(ModelBuilder builder)
|
|
{
|
|
builder.ApplyConfigurationsFromAssembly(typeof(Prefab.Catalog.Data.IModuleDb).Assembly);
|
|
}
|
|
|
|
protected override void PrefabOnConfiguring(DbContextOptionsBuilder optionsBuilder)
|
|
{
|
|
// Additional write-context configuration can be applied here if needed.
|
|
}
|
|
|
|
public DbSet<Category> Categories => Set<Category>();
|
|
|
|
public DbSet<Product> Products => Set<Product>();
|
|
|
|
public DbSet<OptionDefinition> OptionDefinitions => Set<OptionDefinition>();
|
|
|
|
public DbSet<OptionValue> OptionValues => Set<OptionValue>();
|
|
|
|
public DbSet<OptionTier> OptionTiers => Set<OptionTier>();
|
|
|
|
public DbSet<OptionRuleSet> OptionRuleSets => Set<OptionRuleSet>();
|
|
|
|
public DbSet<OptionRuleCondition> OptionRuleConditions => Set<OptionRuleCondition>();
|
|
|
|
public DbSet<VariantAxisValue> VariantAxisValues => Set<VariantAxisValue>();
|
|
|
|
public DbSet<AttributeDefinition> AttributeDefinitions => Set<AttributeDefinition>();
|
|
|
|
public DbSet<ProductAttributeValue> ProductAttributeValues => Set<ProductAttributeValue>();
|
|
|
|
public DbSet<ProductCategory> ProductCategories => Set<ProductCategory>();
|
|
}
|