操作步骤:
-
先安装mysql的net连接驱动库,否则可能会报错,找不到本地驱动提供者
. 版本信息【mysql-connector-net-8.0.25.msi】
链接: https://pan.baidu.com/s/18m6o3MZrl5R4_XXyWKnMhw 提取码: 18sp 复制这段内容后打开百度网盘手机App,操作更方便哦
也可以自己去官网下载。因为使用的是core first 所以不再下载mysql的vs可视化图形工具。 -
安装对应的
其他依赖的 mysql.data 和对应的其他依赖会自动依赖。
- 看看app.confg 配置文件的依赖注入文件是否自动生成,没有请手动添加
<?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" />
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6" />
</startup>
<entityFramework>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.EntityFramework, Version=8.0.25.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
<provider invariantName="Npgsql" type="Npgsql.NpgsqlServices, EntityFramework6.Npgsql" />
</providers>
<defaultConnectionFactory type="Npgsql.NpgsqlConnectionFactory, EntityFramework6.Npgsql" />
</entityFramework>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<connectionStrings>
<add name="MysqlConn" connectionString="server=localhost;port=8636;database=demoTest;uid=root;pwd=mysql" providerName="MySql.Data.MySqlClient" />
<add name="pgsqlConnString" connectionString="server=localhost;port=5432;database=demoTest;UserId=postgres;pwd=123456" providerName="Npgsql" />
</connectionStrings>
<system.data>
<DbProviderFactories>
<remove invariant="Npgsql" />
<add name="Npgsql Provider" invariant="Npgsql" description=".NET Framework Data Provider for PostgreSQL" type="Npgsql.NpgsqlFactory, Npgsql, Version=4.0.10.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" />
</DbProviderFactories>
</system.data>
</configuration>
上面是我的自动生成配置。里边剁了pg的依赖注入配置。
- 然后就是喜闻乐见的 继承DBcontext 和 自己定义model 模型。
/* ==============================================================================
* 功能描述:MysqlDBContext
* 创 建 者:Dell
* 创建日期:2021/5/14 8:52:38
* ==============================================================================*/
using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleAppMySQLTwo
{
/// <summary>
/// MysqlDBContext
/// </summary>
[DbConfigurationType(typeof( MySql.Data.EntityFramework.MySqlEFConfiguration))]
class MysqlDBContext:DbContext
{
#region Constructor
public MysqlDBContext():base("name=MysqlConn")
{
Database.SetInitializer<MysqlDBContext>(new CreateDatabaseIfNotExists<MysqlDBContext>());
DbConfiguration.SetConfiguration(new MySql.Data.EntityFramework.MySqlEFConfiguration());
}
#endregion
#region Filed
#endregion
#region Property
public DbSet<People> peoples { get; set; }
#endregion
#region Private Methods
#endregion
#region Public Methods
#endregion
}
}
嗯 到此所有的准备工作完成,可以自己快乐的玩耍了。
源码下载链接:https://download.csdn.net/download/weixin_43542114/18697396