sql >> Databasteknik >  >> RDS >> Mysql

Entity framework 5.0 kod först med MySQL i WPF

För att använda Connector 6.5.4 med kodförst EF5 på VS2012 behöver du:

  1. Installera MySql Connector 6.5.4 msi
  2. Öppna VS2012 x86 Kommandotolken som Admin och kör:

    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"

  3. Lägg till den här koden i ditt projekts App.config till <configuration> avsnitt:

    <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. Lägg nu till referenser till MySql.Data och MySql.Data.Entity till din lösning och lite kod som denna (jag skapar MySqlConnection och skickar den sedan till konstruktören av 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; }
    }
    


  1. VÄLJA avnormaliserade kolumner till separata poster?

  2. Hur man undkommer värde nyckelord i mysql medan du använder Select-satsen

  3. Sammanfoga InnoDB-tabeller med MyISAM-tabeller

  4. Olaglig blandning av sammanställningar (latin1_swedish_ci,COERCIBLE) och (utf8_general_ci,IMPLICIT) för operation 'find_in_set'