一、web.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<system.web>
<compilation debug="true" targetFramework="4.0">
</compilation>
<httpRuntime />
</system.web>
<connectionStrings>
<add name="test" providerName="MySql.Data.MySqlClient" connectionString="server=127.0.0.1;database=test;UID=root;Password=××××;Allow User Variables=True;" />
</connectionStrings>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
</assemblyBinding>
</runtime>
<system.data>
<DbProviderFactories>
<remove invariant="MySql.Data.MySqlClient" />
<add name="MySQL" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory,MySql.Data" />
</DbProviderFactories>
</system.data>
<entityFramework >
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" >
<parameters>
<parameter value="v11.0"/>
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
</providers>
</entityFramework>
</configuration>
二、代码
using MySql.Data.Entity;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Data.Entity;
using System.Data.Entity.ModelConfiguration.Conventions;
public class test : DbContext {
public DbSet<ab> ab { set; get; }
/// <summary>
/// <span style="color:#ff0000;">重写后 数据库的 表名称和就 类名一致了 否则会多 字符s</span>
/// </summary>
/// <param name="modelBuilder"></param>
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
}
//[System.ComponentModel.DataAnnotations.Schema.Table("ab")]
public class ab {
[Key]
public string a
{
set;
get;
}
public string b
{
set;
get;
}
}
三、演示
test w = new test();
// System.Data.Entity.Database.SetInitializer<test>(new DropCreateDatabaseAlways<test>());
@w.ab.Count();
ab abs = new ab();
abs.a = "23";
abs.b = "cccc";
w.ab.Add(abs);
w.SaveChanges();