public void AddPluginConfig(IConfigurationBuilder builder, string connectionString) { WorkOrdersConfigurationSeedData seedData = new WorkOrdersConfigurationSeedData(); WorkOrderPnContextFactory contextFactory = new WorkOrderPnContextFactory(); builder.AddPluginConfiguration( connectionString, seedData, contextFactory); }
public static void SeedData(WorkOrderPnDbContext dbContext) { WorkOrdersConfigurationSeedData seedData = new WorkOrdersConfigurationSeedData(); PluginConfigurationValue[] configurationList = seedData.Data; foreach (PluginConfigurationValue configurationItem in configurationList) { if (!dbContext.PluginConfigurationValues.Any(x => x.Name == configurationItem.Name)) { PluginConfigurationValue newConfigValue = new PluginConfigurationValue() { Name = configurationItem.Name, Value = configurationItem.Value, CreatedAt = DateTime.UtcNow, UpdatedAt = DateTime.UtcNow, Version = 1, WorkflowState = Constants.WorkflowStates.Created, CreatedByUserId = 1 }; dbContext.PluginConfigurationValues.Add(newConfigValue); dbContext.SaveChanges(); } } // Seed plugin permissions IEnumerable <PluginPermission> newPermissions = WorkOrdersPermissionsSeedData.Data .Where(p => dbContext.PluginPermissions.All(x => x.ClaimName != p.ClaimName)) .Select(p => new PluginPermission { PermissionName = p.PermissionName, ClaimName = p.ClaimName, CreatedAt = DateTime.UtcNow, Version = 1, WorkflowState = Constants.WorkflowStates.Created, CreatedByUserId = 1 }); dbContext.PluginPermissions.AddRange(newPermissions); dbContext.SaveChanges(); }