protected override void Configure(EntityConfigurator <ReactionRole> configurator) { configurator .Has(e => e.HasOne(p => p.OwningServer).WithMany(p => p.RoleReactions).OnDelete(DeleteBehavior.Cascade)) .Has(e => e.Property(p => p.EmoteName).IsRequired()) .Has(e => e.Property(p => p.RoleId).IsRequired()) .Has(e => e.Property(p => p.MessageId).IsRequired()) .Has(e => e.Property(p => p.ChannelId).IsRequired()); }
protected override void Configure(EntityConfigurator <MonitoredStream> configurator) { configurator .Has(e => e.HasOne(p => p.OwningServer).WithMany(p => p.MonitoredStreams) .OnDelete(DeleteBehavior.Cascade)) .Has(e => e.Property(p => p.NotificationTemplate).IsRequired()) .Has(e => e.Property(p => p.StreamName)) .Has(e => e.Property(p => p.NotificationRoleIds).HasConversion( v => JsonSerializer.Serialize(v, null), v => JsonSerializer.Deserialize <List <ulong> >(v, null))); }
protected override void Configure(EntityConfigurator <DiscordServerConfiguration> configurator) { configurator .Has(e => e.HasMany(p => p.MonitoredStreams).WithOne(p => p.OwningServer)) .Has(e => e.HasMany(p => p.RoleReactions).WithOne(p => p.OwningServer)) .Has(e => e.Property(p => p.ServerId).IsRequired()) .Has(e => e.Property(p => p.LogLevel)) .Has(e => e.Property(p => p.ServerLogChannelId)) .Has(e => e.Property(p => p.StreamNotificationChannelId)) .Has(e => e.Ignore(p => p.RuleMessageIds)); //TODO ignored for now }