Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        /// <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);
        }