168 lines
6.5 KiB
C#
168 lines
6.5 KiB
C#
using System;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.EntityFrameworkCore.Metadata;
|
|
|
|
#nullable disable
|
|
|
|
namespace ChaosBot.Models
|
|
{
|
|
public partial class chaosbotContext : DbContext
|
|
{
|
|
public chaosbotContext()
|
|
{
|
|
}
|
|
|
|
public chaosbotContext(DbContextOptions<chaosbotContext> options)
|
|
: base(options)
|
|
{
|
|
}
|
|
|
|
public virtual DbSet<LodestoneCharacter> LodestoneCharacters { get; set; }
|
|
public virtual DbSet<LodestoneFreeCompany> LodestoneFreeCompanies { get; set; }
|
|
public virtual DbSet<PointsTable> PointsTables { get; set; }
|
|
public virtual DbSet<RaffleTable> RaffleTables { get; set; }
|
|
public virtual DbSet<ServerConfigurationFlag> ServerConfigurationFlags { get; set; }
|
|
|
|
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
|
|
{
|
|
if (!optionsBuilder.IsConfigured)
|
|
{
|
|
#warning To protect potentially sensitive information in your connection string, you should move it out of source code. You can avoid scaffolding the connection string by using the Name= syntax to read it from configuration - see https://go.microsoft.com/fwlink/?linkid=2131148. For more guidance on storing connection strings, see http://go.microsoft.com/fwlink/?LinkId=723263.
|
|
optionsBuilder.UseMySql($"server={Program.LoadConfiguration("Database:Host")};port={Program.LoadConfiguration("Database:Port")};user={Program.LoadConfiguration("Database:User")};password={Program.LoadConfiguration("Database:Pass")};database={Program.LoadConfiguration("Database:Name")}", x => x.ServerVersion("5.5.64-mariadb"));
|
|
}
|
|
}
|
|
|
|
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
|
{
|
|
modelBuilder.Entity<LodestoneCharacter>(entity =>
|
|
{
|
|
entity.HasNoKey();
|
|
|
|
entity.ToTable("LodestoneCharacter");
|
|
|
|
entity.Property(e => e.Avatar)
|
|
.HasColumnType("text")
|
|
.HasColumnName("avatar")
|
|
.HasCharSet("latin1")
|
|
.HasCollation("latin1_swedish_ci")
|
|
.HasAnnotation("Relational:ColumnType", "text");
|
|
|
|
entity.Property(e => e.Id)
|
|
.HasColumnType("int(11)")
|
|
.HasColumnName("id")
|
|
.HasAnnotation("Relational:ColumnType", "int(11)");
|
|
|
|
entity.Property(e => e.Name)
|
|
.HasColumnType("text")
|
|
.HasColumnName("name")
|
|
.HasCharSet("latin1")
|
|
.HasCollation("latin1_swedish_ci")
|
|
.HasAnnotation("Relational:ColumnType", "text");
|
|
|
|
entity.Property(e => e.UserId)
|
|
.HasColumnType("bigint(20)")
|
|
.HasColumnName("userId")
|
|
.HasAnnotation("Relational:ColumnType", "bigint(20)");
|
|
});
|
|
|
|
modelBuilder.Entity<LodestoneFreeCompany>(entity =>
|
|
{
|
|
entity.HasNoKey();
|
|
|
|
entity.ToTable("LodestoneFreeCompany");
|
|
|
|
entity.Property(e => e.Id)
|
|
.HasColumnType("text")
|
|
.HasColumnName("id")
|
|
.HasCharSet("latin1")
|
|
.HasCollation("latin1_swedish_ci")
|
|
.HasAnnotation("Relational:ColumnType", "text");
|
|
|
|
entity.Property(e => e.Name)
|
|
.HasColumnType("text")
|
|
.HasColumnName("name")
|
|
.HasCharSet("latin1")
|
|
.HasCollation("latin1_swedish_ci")
|
|
.HasAnnotation("Relational:ColumnType", "text");
|
|
});
|
|
|
|
modelBuilder.Entity<PointsTable>(entity =>
|
|
{
|
|
entity.HasNoKey();
|
|
|
|
entity.ToTable("PointsTable");
|
|
|
|
entity.Property(e => e.GuildId)
|
|
.HasColumnType("bigint(20)")
|
|
.HasColumnName("guildId")
|
|
.HasAnnotation("Relational:ColumnType", "bigint(20)");
|
|
|
|
entity.Property(e => e.Id)
|
|
.HasColumnType("int(11)")
|
|
.HasColumnName("id")
|
|
.HasAnnotation("Relational:ColumnType", "int(11)");
|
|
|
|
entity.Property(e => e.Points)
|
|
.HasColumnType("int(11)")
|
|
.HasColumnName("points")
|
|
.HasAnnotation("Relational:ColumnType", "int(11)");
|
|
|
|
entity.Property(e => e.UserId)
|
|
.HasColumnType("bigint(20)")
|
|
.HasColumnName("userId")
|
|
.HasAnnotation("Relational:ColumnType", "bigint(20)");
|
|
});
|
|
|
|
modelBuilder.Entity<RaffleTable>(entity =>
|
|
{
|
|
entity.HasNoKey();
|
|
|
|
entity.ToTable("RaffleTable");
|
|
|
|
entity.Property(e => e.GuildId)
|
|
.HasColumnType("bigint(20)")
|
|
.HasColumnName("guildId")
|
|
.HasAnnotation("Relational:ColumnType", "bigint(20)");
|
|
|
|
entity.Property(e => e.Id)
|
|
.HasColumnType("int(11)")
|
|
.HasColumnName("id")
|
|
.HasAnnotation("Relational:ColumnType", "int(11)");
|
|
|
|
entity.Property(e => e.UserId)
|
|
.HasColumnType("bigint(20)")
|
|
.HasColumnName("userId")
|
|
.HasAnnotation("Relational:ColumnType", "bigint(20)");
|
|
});
|
|
|
|
modelBuilder.Entity<ServerConfigurationFlag>(entity =>
|
|
{
|
|
entity.HasNoKey();
|
|
|
|
entity.Property(e => e.GuildId)
|
|
.HasColumnType("bigint(20)")
|
|
.HasColumnName("guildId")
|
|
.HasAnnotation("Relational:ColumnType", "bigint(20)");
|
|
|
|
entity.Property(e => e.Key)
|
|
.HasColumnType("text")
|
|
.HasColumnName("key")
|
|
.HasCharSet("latin1")
|
|
.HasCollation("latin1_swedish_ci")
|
|
.HasAnnotation("Relational:ColumnType", "text");
|
|
|
|
entity.Property(e => e.SerializedValue)
|
|
.HasColumnType("text")
|
|
.HasColumnName("serializedValue")
|
|
.HasCharSet("latin1")
|
|
.HasCollation("latin1_swedish_ci")
|
|
.HasAnnotation("Relational:ColumnType", "text");
|
|
});
|
|
|
|
OnModelCreatingPartial(modelBuilder);
|
|
}
|
|
|
|
partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
|
|
}
|
|
}
|