2012-10-08 5 views
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 = 새로운 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

안녕하세요 Gert! 빠른 응답에 감사드립니다! ConnectionString은 올바른 web.config;에 있습니다.) .... – user1520494

답변

1

연결 문자열의 이름 중 하나는 컨텍스트 클래스의 이름과 일치해야합니다, 또는 당신은 연결 문자열을 사용하여 상황에 맞는 클래스를 알려줄 필요가 :

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

    // DbSet properties here 
} 
+0

omg>. user1520494

관련 문제