private static MySqlConnectionStringBuilder GetConnectionSettings(MySQLOptionsExtension relationalOptions) { if (relationalOptions.Connection != null) { return(new MySqlConnectionStringBuilder(relationalOptions.Connection.ConnectionString)); } if (relationalOptions.ConnectionString != null) { return(new MySqlConnectionStringBuilder(relationalOptions.ConnectionString)); } throw new InvalidOperationException(RelationalStrings.NoConnectionOrConnectionString); }
public static DbContextOptionsBuilder UseMySQL(this DbContextOptionsBuilder optionsBuilder, string connectionString, Action <MySQLDbContextOptionsBuilder> MySQLOptionsAction = null) { var extension = optionsBuilder.Options.FindExtension <MySQLOptionsExtension>(); if (extension == null) { extension = new MySQLOptionsExtension(); } extension.ConnectionString = connectionString; IDbContextOptionsBuilderInfrastructure o = optionsBuilder as IDbContextOptionsBuilderInfrastructure; o.AddOrUpdateExtension(extension); MySQLOptionsAction?.Invoke(new MySQLDbContextOptionsBuilder(optionsBuilder)); return(optionsBuilder); }
/// <summary> /// Configures the <see cref="DbContext" /> to use MySQL Sever. /// </summary> /// <param name="optionsBuilder">DbContext option builder.</param> /// <param name="connectionString">MySQL connection string.</param> /// <param name="MySQLOptionsAction">DbContext option builder action.</param> /// <returns>DbContext option builder using MySQL.</returns> public static DbContextOptionsBuilder UseMySQL( [NotNull] this DbContextOptionsBuilder optionsBuilder, [NotNull] string connectionString, [CanBeNull] Action <MySQLDbContextOptionsBuilder> MySQLOptionsAction = null) { var extension = optionsBuilder.Options.FindExtension <MySQLOptionsExtension>(); if (extension == null) { extension = new MySQLOptionsExtension(); } extension = (MySQLOptionsExtension)extension.WithConnectionString(connectionString); IDbContextOptionsBuilderInfrastructure o = optionsBuilder as IDbContextOptionsBuilderInfrastructure; o.AddOrUpdateExtension(extension); MySQLOptionsAction?.Invoke(new MySQLDbContextOptionsBuilder(optionsBuilder)); return(optionsBuilder); }