Browse Source

feature checks added.

pull/7057/head
Ilkay Ilknur 6 years ago
parent
commit
ff05ece058
  1. 105
      modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/EntityFrameworkCore/CmsKitDbContextModelCreatingExtensions.cs

105
modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/EntityFrameworkCore/CmsKitDbContextModelCreatingExtensions.cs

@ -97,57 +97,66 @@ namespace Volo.CmsKit.EntityFrameworkCore
}); });
} }
builder.Entity<Content>(b => if (GlobalFeatureManager.Instance.IsEnabled<ContentsFeature>())
{ {
b.ToTable(options.TablePrefix + "Contents", options.Schema); builder.Entity<Content>(b =>
{
b.ConfigureByConvention(); b.ToTable(options.TablePrefix + "Contents", options.Schema);
b.Property(x => x.EntityType).IsRequired().HasMaxLength(ContentConsts.MaxEntityTypeLength); b.ConfigureByConvention();
b.Property(x => x.EntityId).IsRequired().HasMaxLength(ContentConsts.MaxEntityIdLength);
b.Property(x => x.Value).IsRequired().HasMaxLength(ContentConsts.MaxValueLength); b.Property(x => x.EntityType).IsRequired().HasMaxLength(ContentConsts.MaxEntityTypeLength);
b.Property(x => x.EntityId).IsRequired().HasMaxLength(ContentConsts.MaxEntityIdLength);
b.HasIndex(x => new { x.TenantId, x.EntityType, x.EntityId }); b.Property(x => x.Value).IsRequired().HasMaxLength(ContentConsts.MaxValueLength);
});
b.HasIndex(x => new {x.TenantId, x.EntityType, x.EntityId});
builder.Entity<Tag>(b => });
{ }
b.ToTable(options.TablePrefix + "Tags", options.Schema);
if (GlobalFeatureManager.Instance.IsEnabled<TagsFeature>())
b.ConfigureByConvention();
b.Property(x => x.EntityType).IsRequired().HasMaxLength(TagConsts.MaxEntityTypeLength);
b.Property(x => x.Name).IsRequired().HasMaxLength(TagConsts.MaxNameLength);
b.HasIndex(x => new { x.TenantId, x.Name });
});
builder.Entity<EntityTag>(b =>
{ {
b.ToTable(options.TablePrefix + "EntityTags", options.Schema); builder.Entity<Tag>(b =>
{
b.ConfigureByConvention(); b.ToTable(options.TablePrefix + "Tags", options.Schema);
b.HasKey(x => new { x.EntityId, x.TagId }); b.ConfigureByConvention();
b.Property(x => x.EntityId).IsRequired(); b.Property(x => x.EntityType).IsRequired().HasMaxLength(TagConsts.MaxEntityTypeLength);
b.Property(x => x.TagId).IsRequired(); b.Property(x => x.Name).IsRequired().HasMaxLength(TagConsts.MaxNameLength);
b.HasIndex(x => new { x.TenantId, x.EntityId, x.TagId }); b.HasIndex(x => new {x.TenantId, x.Name});
}); });
builder.Entity<Page>(b => builder.Entity<EntityTag>(b =>
{
b.ToTable(options.TablePrefix + "EntityTags", options.Schema);
b.ConfigureByConvention();
b.HasKey(x => new {x.EntityId, x.TagId});
b.Property(x => x.EntityId).IsRequired();
b.Property(x => x.TagId).IsRequired();
b.HasIndex(x => new {x.TenantId, x.EntityId, x.TagId});
});
}
if (GlobalFeatureManager.Instance.IsEnabled<PagesFeature>())
{ {
b.ToTable(options.TablePrefix + "Pages", options.Schema); builder.Entity<Page>(b =>
{
b.ConfigureByConvention(); b.ToTable(options.TablePrefix + "Pages", options.Schema);
b.Property(x => x.Title).IsRequired().HasMaxLength(PageConsts.MaxTitleLength); b.ConfigureByConvention();
b.Property(x => x.Url).IsRequired().HasMaxLength(PageConsts.MaxUrlLength);
b.Property(x => x.Description).HasMaxLength(PageConsts.MaxDescriptionLength); b.Property(x => x.Title).IsRequired().HasMaxLength(PageConsts.MaxTitleLength);
b.Property(x => x.Url).IsRequired().HasMaxLength(PageConsts.MaxUrlLength);
b.HasIndex(x => new { x.TenantId, x.Url }); b.Property(x => x.Description).HasMaxLength(PageConsts.MaxDescriptionLength);
});
b.HasIndex(x => new {x.TenantId, x.Url});
});
}
} }
} }
} }

Loading…
Cancel
Save