2012-10-08 33 views
0

我想使用CodeFirst将我的应用程序连接到MySql,但我得到一个错误,使我与上下文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 =新SchoolContext( );
ctx.Database.Initialize(true);

我想知道为什么ctx.Connection.Connectionstring仍然SQLEXPRESS

“数据源= \ SQLEXPRESS;初始 目录= MysqlTesting.Controllers.SchoolContext;集成 安全= TRUE; MultipleActiveResultSets = TRUE;应用 名称= EntityFrameworkMUE”

我是新用的EntityFramework,我想知道我在做什么错在我的web.config。

+0

也许[这](HTTP:// stackoverflow.com/questions/4952269/entity-framework-problem-when-edmx-file-is-in-seperate-project)? –

+0

嗨,格特!感谢您的快速响应! ConnectionString位于正确的web.config中;).... – user1520494

回答

1

您的连接字符串的名称或者需要匹配上下文类的名称,或者你需要告诉你的上下文类要使用的连接字符串:

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

    // DbSet properties here 
} 
+0

omg>。<! Ty Brice! :d – user1520494

相关问题