using System; using Volo.Abp; using Volo.Abp.MongoDB; using Volo.CmsKit.Comments; using Volo.CmsKit.Contents; using Volo.CmsKit.Pages; using Volo.CmsKit.Ratings; using Volo.CmsKit.Reactions; using Volo.CmsKit.Tags; using Volo.CmsKit.Users; namespace Volo.CmsKit.MongoDB { public static class CmsKitMongoDbContextExtensions { public static void ConfigureCmsKit( this IMongoModelBuilder builder, Action optionsAction = null) { Check.NotNull(builder, nameof(builder)); var options = new CmsKitMongoModelBuilderConfigurationOptions( CmsKitDbProperties.DbTablePrefix ); optionsAction?.Invoke(options); builder.Entity(x => { x.CollectionName = CmsKitDbProperties.DbTablePrefix + "Users"; }); builder.Entity(x => { x.CollectionName = CmsKitDbProperties.DbTablePrefix + "UserReactions"; }); builder.Entity(x => { x.CollectionName = CmsKitDbProperties.DbTablePrefix + "Comments"; }); builder.Entity(x => { x.CollectionName = CmsKitDbProperties.DbTablePrefix + "Ratings"; }); builder.Entity(x => { x.CollectionName = CmsKitDbProperties.DbTablePrefix + "Contents"; }); builder.Entity(x => { x.CollectionName = CmsKitDbProperties.DbTablePrefix + "Tags"; }); builder.Entity(x => { x.CollectionName = CmsKitDbProperties.DbTablePrefix + "EntityTags"; }); builder.Entity(x => { x.CollectionName = CmsKitDbProperties.DbTablePrefix + "Pages"; }); } } }