2011-04-01 115 views
1

工作,我有这样的配置:实体框架进行MySQL实体

<connectionStrings> 
<!--<add name="NREticaretContext" 
    connectionString="Data Source=localhost;Initial Catalog=myDBSqlServer;Persist Security Info=True;User ID=sa;Password=mypass;Timeout=20;" 
    providerName="System.Data.SqlClient" />--> 
<add name="NREticaretContext" 
    connectionString="Server=localhost;Database=myDBMySQL;Uid=root;Pwd=mypass;port=3306;" providerName="MySql.Data.MySqlClient"/> 

如果我用第一配置设置(SQL Server)的everythicg在我的项目工作正常。 但是,当我尝试使用它使用MySQL的实体框架的MySQL连接器第二个连接(MySQL的),应用口口声声说:

“型号的兼容性无法进行检查,因为EdmMetadata类型没有在模型包括确保IncludeMetadataConvention已被添加到DbModelBuilder约定中。“

protected override void OnModelCreating(DbModelBuilder modelBuilder) 
    { 
     modelBuilder.Conventions.Remove<IncludeMetadataConvention>();    
    } 

在我的上下文类,但是它不断给予同样的错误... 您的建议:

我已经尝试使用?

回答

2

看来Connector/NET目前在EF 4.1上遇到了一些问题。
尝试关闭初始化策略System.Data.Entity.Database.SetInitializer<MyContext>(null);
我建议您在我们的博客中查看Code First Support article。它描述了与Code First合作在dotConnect for MySQL中的一些特性。