MySQL を使用して Entity Framework 6 の動的データベース名に接続する方法

DDD
リリース: 2024-11-07 14:36:02
オリジナル
315 人が閲覧しました

How to Connect to a Dynamic Database Name in Entity Framework 6 with MySQL?

Entity Framework 6 for MySQL での動的データベース接続

Entity Framework 6 用の MySQL の構成

Entity Framework 6 と MySQL の間の接続を確立するには、これらに従ってください手順:

  • MySQL の公式 Web サイトから MySQL .Net Connector 6.8.1 (ベータ) をインストールします。
  • Mysql.Data.dll および Mysql.Data.Entity.EF6.dll を参照してください。 Visual Studio ソリューション。
  • これらのファイルをプロジェクトの bin ディレクトリにコピーします。
  • Web.config ファイルに接続文字列を追加し、providerName 属性が含まれていることを確認します。
<add name="mysqlCon" connectionString="Server=localhost;Database=dbName;Uid=username;Pwd=password" providerName="MySql.Data.MySqlClient" />
ログイン後にコピー
  • 次のプロバイダー情報を内部に追加します。 Web.config ファイル内のノード:
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
<providers>
    <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
</providers>
ログイン後にコピー
  • を削除します。 からのノード

動的データベース名への接続

  • Web.config の接続文字列を更新して、データベース名のプレースホルダーを含めます。 :
<add name="mysqlCon" connectionString="Server=localhost;Database={0};Uid=username;Pwd=password" providerName="MySql.Data.MySqlClient" />
ログイン後にコピー
  • ApplicationDbContext クラスを次のように変更します。
public class ApplicationDbContext : DbContext
{
    public ApplicationDbContext(string dbName) : base(GetConnectionString(dbName))
    {
    }

    public static string GetConnectionString(string dbName)
    {
        var connString = ConfigurationManager.ConnectionStrings["mysqlCon"].ConnectionString.ToString();
        return String.Format(connString, dbName);
    }
}
ログイン後にコピー
  • コンテキスト クラスの最後に MigrationsContextFactory クラスを追加して、データベースの移行を処理します。
public class MigrationsContextFactory : IDbContextFactory<ApplicationDbContext>
{
    public ApplicationDbContext Create()
    {
        return new ApplicationDbContext("developmentdb");
    }
}
ログイン後にコピー

これにより、エンティティ フレームワーク コンテキストへの動的な接続文字列。これにより、以下に基づいて複数の同一データベース スキーマを簡単に切り替えることができます。アカウント。

以上がMySQL を使用して Entity Framework 6 の動的データベース名に接続する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!