1、首先新建一个类库,然后通过NuGet安装下面三个包

2、然后在程序包管理器控制台中运行以下代码(ps:记得默认项目选择刚才新建的项目,同时设置为启动项)

server 是服务器地址
database 是数据库名
 Scaffold-DbContext "server=localhost;userid=root;pwd=****;port=3306;database=sprotweb;sslmode=none;" Pomelo.EntityFrameworkCore.MySql  
-OutputDir Models 加上这个指定生成文件夹

ps:如果数据库表变动,需要重新生成model,在上面语句中末尾加上 -Force 即可覆盖model

附上官方链接:https://docs.microsoft.com/zh-cn/ef/core/miscellaneous/cli/powershell

3、如果你已经有数据库表的话,接下系统会自动生成对应表的Model层

其中XXXContext中OnConfiguring方法,写有数据库连接信息。

一般开发中信息存储在json配置文件中,因此这里我们public一个字段 ConnectionString

public static string ConnectionString;

同时修改源代码中的连接代码

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
if (!optionsBuilder.IsConfigured)
{
//#warning To protect potentially sensitive information in your connection string, you should move it out of source code. See http://go.microsoft.com/fwlink/?LinkId=723263 for guidance on storing connection strings.
//optionsBuilder.UseMySql("server=localhost;userid=root;pwd=qazpl2010;port=3306;database=sprotweb;sslmode=none;");
          optionsBuilder.UseMySql(ConnectionString);
} }

(这里比较麻烦的就是每次数据库有更改,这里都需要重写一次) 有更好的方法欢迎留言探讨。

ok  到此model层的设置就已经完成

4、在其他项目中 如果引用此model的话  在Startup中使用以下代码

public void ConfigureServices(IServiceCollection services)
{
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);

        //数据库连接代码
        var connection = Configuration.GetConnectionString("SqlServer");
        services.AddDbContext<sprotwebContext>(options => options.UseSqlServer(connection));

        }

json配置文件 增加配置信息  如下

"ConnectionStrings": {
"SqlServer": "server=localhost;userid=root;pwd=****;port=3306;database=sprotweb;sslmode=none;"
},

到此就能正常使用数据库了。

.NET CORE 下 MariaDB DBfirst 生成model层 并配置连接参数的更多相关文章

  1. .NET Core 获取数据库上下文实例的方法和配置连接字符串

    目录 .NET Core 获取数据库上下文实例的方法和配置连接字符串 ASP.NET Core 注入 .NET Core 注入 无签名上下文 OnConfigure 配置 有签名上下文构造函数和自己n ...

  2. Yii2.0 自动生成 model 层

    yii2.0 里一个表对应一个model,可以自动生成 前台使用的model在frontend(backend)/web目录下的gii生成例如(www.liqiuyue.com/yii /fronte ...

  3. Asp.Net Core下使用swagger生成api文档

    目录 一.前期准备 二.配置Swagger 三.参考 .Net Core中有两个集成NSwag的包,分别为Swashbuckle和NSwag.两者的配置大同小异.这里以NSwag为例. 一.前期准备 ...

  4. .net core mvc + mysql dbfirst 生成 ado.net 数据模型

    1.点击“工具”->“NuGet包管理器”->“程序包管理器控制台” 安装一下包 Install-Package MySql.Data.EntityFrameworkCore -Pre I ...

  5. 自动生成Model层中对应表的各个字段

    select 'public '+ case t.name when 'varchar' then 'string' when 'smallint' then 'Int16' when 'int' t ...

  6. yii2 model层中配置常量与list

  7. 4.5 .net core下直接执行SQL语句并生成DataTable

    .net core可以执行SQL语句,但是只能生成强类型的返回结果.例如var blogs = context.Blogs.FromSql("SELECT * FROM dbo.Blogs& ...

  8. .net core下直接执行SQL语句并生成DataTable

    .net core可以执行SQL语句,但是只能生成强类型的返回结果.例如var blogs = context.Blogs.FromSql("SELECT * FROM dbo.Blogs& ...

  9. .NET Core下使用gRpc公开服务(SSL/TLS)

    一.前言 前一阵子关于.NET的各大公众号都发表了关于gRpc的消息,而随之而来的就是一波关于.NET Core下如何使用的教程,但是在这众多的教程中基本都是泛泛而谈,难以实际在实际环境中使用,而该篇 ...

随机推荐

  1. Tag Tree

    Test & Measurement RF RFID DAQ Mixed Signal Instrumentation DSP C# C\C++ JAVA Work Better Git Ma ...

  2. 使用PHP实现查找附近的人

    https://zhuanlan.zhihu.com/p/31380780 LBS(基于位置的服务) 查找附近的人有个更大的专有名词叫做LBS(基于位置的服务),LBS是指是指通过电信移动运营商的无线 ...

  3. nineoldandroids开源库

    Android3.0 推出AnimationAPI ,使用起来比较方便,但是不能再3.0以下版本中使用.nineoldandroids开源库可以在任意版本上使用,官网地址:http://nineold ...

  4. opencv之dlib库人脸识别

    基础知识 python知识: import os,shutil shutil.rmtree("C:\\Users\\yangwj\\Desktop\\test") #删除目录 os ...

  5. iOS中NSTimer的使用

    1.初始化 + (NSTimer *)timerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelect ...

  6. 微信小程序企业付款到个人

    <?php /** * 小程序之企业付款到个人! */ class WxPayModel extends Model { public function sendMoneyToPerson($t ...

  7. iOS-AVPlayer使用

    1引入AVFoundation.framework框架 2引入头文件<AVFoundation/AVFoundation.h>,并拖入需要播放的视频文件 代码如下: 自定义播放的View, ...

  8. thinkPHP 类库映射 类库导入

    遵循我们上面的命名空间定义规范的话,基本上可以完成类库的自动加载了,但是如果定义了较多的命名空间的话,效率会有所下降,所以,我们可以给常用的类库定义类库映射.命名类库映射相当于给类文件定义了一个别名, ...

  9. 详解MySQL 内连接、外连接、左连接、右连接

    建表语句: CREATE TABLE `a_table` ( `a_id` ) DEFAULT NULL, `a_name` ) DEFAULT NULL, `a_part` ) DEFAULT NU ...

  10. 使用django进行大文件的上传下载

    下载 基于Django建立的网站,如果提供文件下载功能,最简单的方式莫过于将静态文件交给Nginx等处理,但有些时候,由于网站本身逻辑,需要通过Django提供下载功能,如页面数据导出功能(下载动态生 ...