Entity Framework 6 の動的 MySQL データベース接続
多数の同一スキーマを操作する場合、動的データベース接続を確立すると効率が向上します。この記事では、特定のシナリオに応じて、Entity Framework 6 で動的 MySQL データベース接続を利用する方法について包括的に説明します。
Entity Framework 6 用の MySQL のセットアップ
まず、互換性のある MySQL .Net コネクタ ドライバ、特にバージョン 6.8.1 がインストールされていることを確認します。プロジェクトで必要なライブラリを参照し、Web.config/App.config ファイルを適切に調整します。
特定の実装の詳細については、提供されているサンプルを参照してください。
動的に選択されたデータベース名への接続
特定のスキーマに動的に接続するには、プレースホルダーを使用して接続文字列を変更します。
<add name="mysqlCon" connectionString="Server=localhost;Database={0};Uid=username;Pwd=password" providerName="MySql.Data.MySqlClient" />
接続文字列を動的に構築するヘルパー メソッドを作成します。 ApplicationDbContext を更新してデータベース名を受け入れ、接続の初期化にヘルパー メソッドを使用します。
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); }
データベース移行の問題の解決
データベース移行を使用する場合は、次のクラスを使用して、正しいコンテキストが使用されていることを確認します:
public class MigrationsContextFactory : IDbContextFactory<ApplicationDbContext> { public ApplicationDbContext Create() { return new ApplicationDbContext("developmentdb"); } }
これにより、移行メソッドがデータベース名パラメーターを受け取らないという問題が解決されます。
以上がEntity Framework 6 を使用して動的 MySQL データベース接続を実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。