Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Entity Framework 5.0 Code-First mit MySQL in WPF

Um Connector 6.5.4 mit Code-First EF5 auf VS2012 zu verwenden, benötigen Sie:

  1. Installieren Sie MySql Connector 6.5.4 msi
  2. Öffnen Sie die VS2012 x86-Eingabeaufforderung als Administrator und führen Sie Folgendes aus:

    gacutil /i "C:\Programme (x86)\MySQL\Connector NET 6.5.4\Assemblies\v4.0\mysql.data.dll"gacutil /i "C:\Programme (x86)\MySQL\Connector NET 6.5.4\Assemblies\v4.0\mysql.data.entity.dll"

  3. Fügen Sie in der App.config Ihres Projekts diesen Code zu <configuration> hinzu Abschnitt:

    <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>
    
  4. Fügen Sie Ihrer Lösung nun Verweise auf MySql.Data und MySql.Data.Entity und Code wie diesen hinzu (ich erstelle MySqlConnection und übergebe ihn dann an den Konstruktor von 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; }
    }