using GWMS.Data.DatabaseModels; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Configuration; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace GWMS.Data { public partial class AdminContext : DbContext { #region Private Fields private IConfiguration _configuration; #endregion Private Fields #region Public Constructors public AdminContext() { } public AdminContext(IConfiguration configuration) { _configuration = configuration; } public AdminContext(DbContextOptions options) : base(options) { } #endregion Public Constructors #region Public Properties /// /// User management /// public DbSet UserList { get; set; } #endregion Public Properties #region Private Methods partial void OnModelCreatingPartial(ModelBuilder modelBuilder); #endregion Private Methods #region Protected Methods protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { string connString = DbConfig.ADMIN_CONNECTION_STRING; if (!optionsBuilder.IsConfigured) { //connString = _configuration.GetConnectionString("GWMS.Data"); //connString = "Server=localhost;port=3306;database=GWMS;user=GWMS;pwd=GWMS_secret_pwd;sslmode=None;"; var serverVersion = ServerVersion.AutoDetect(connString); optionsBuilder.UseMySql(connString, serverVersion); } } protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.Entity().HasKey(c => new { c.Host, c.User }); OnModelCreatingPartial(modelBuilder); } #endregion Protected Methods } }