0

CodeFirst を使用してアプリケーションを MySql に接続しようとしていますが、Context ConnectionString に夢中になるエラーが発生します。

  • エンティティ フレームワーク 4.3.1
  • MySQL コネクタ 6.6.3

Web.config:

   <connectionStrings>
     <add name="PersonalContext" connectionString="server=localhost;UserId=root;password=1234;database=school;" providerName="MySql.Data.MySqlClient" />
   </connectionStrings>


  <system.data>
    <DbProviderFactories>
      <remove invariant="MySql.Data.MySqlClient" />
      <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL"  type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.6.3.0, Culture=neutral, PublicKeyToken=852c9eb6525c1b53" />
    </DbProviderFactories>
  </system.data>

コントローラ:

var ctx = new SchoolContext();
ctx.Database.Initialize(真);

ctx.Connection.Connectionstring がまだ SQLEXPRESS を使用している理由を知りたい

"データ ソース=.\SQLEXPRESS;初期カタログ=MysqlTesting.Controllers.SchoolContext;統合セキュリティ=True;MultipleActiveResultSets=True;アプリケーション名=EntityFrameworkMUE"

私はentityFrameworkに不慣れで、web.configで何が間違っているのか知りたいです。

4

1 に答える 1

1

接続文字列の名前は、コンテキスト クラスの名前と一致する必要があるか、使用する接続文字列をコンテキスト クラスに指定する必要があります。

class SchoolContext
{
    public SchoolContext()
        : base("Name=PersonalContext")
    {
    }

    // DbSet properties here
}
于 2012-10-08T16:13:34.033 に答える