Pour utiliser Connector 6.5.4 avec code-first EF5 sur VS2012, vous avez besoin :
- Installer le connecteur MySql 6.5.4 msi
-
Ouvrez l'invite de commande VS2012 x86 en tant qu'administrateur et exécutez :
gacutil /i "C:\Program Files (x86)\MySQL\Connector NET 6.5.4\Assemblies\v4.0\mysql.data.dll"gacutil /i "C:\Program Files (x86)\MySQL\Connector NET 6.5.4\Assemblies\v4.0\mysql.data.entity.dll"
-
Ajoutez dans App.config de votre projet ce code à
<configuration>
rubrique :<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.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" /> </DbProviderFactories> </system.data>
-
Ajoutez maintenant des références à MySql.Data et MySql.Data.Entity à votre solution et un code comme celui-ci (je crée MySqlConnection, puis le passe au constructeur de MyDbContext)
public class MyDbContext : DbContext { public MyDbContext(DbConnection connection) : base(connection, true) { } public DbSet<Product> Products { get; set; } } [Table("sund_jshopping_products")] public class Product { [Key] [Column("product_id")] public int Id { get; set; } [Column("product_ean")] public string Ean { get; set; } [Column("product_manufacturer_id")] public int OperatorId { get; set; } [Column("months_status")] public string MonthsStatus { get; set; } [Column("extra_field_5")] public string SideId { get; set; } }