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