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. linux查看文件的编码格式的方法 set fileencoding

    查看文件编码在Linux中查看文件编码可以通过以下几种方式:1.在Vim中 可以直接查看文件编码:set fileencoding即可显示文件编码格式.如果你只是想查看其它编码格式的文件或者想解决 用 ...

  2. css 百分比减去像素

    1)第一种实现方式 @body_center_width: ~`$(document).width()-400+'px'`; #helloworld { width: @body_center_wid ...

  3. excel怎么把一个sheet的 全部内容打印到一页纸上

    参考 https://jingyan.baidu.com/article/5225f26b04005ee6fa090830.html

  4. spring (反射+代理+DI+AOP)

    spring  https://baijiahao.baidu.com/s?id=1620606848227713760&wfr=spider&for=pc 反射 https://bl ...

  5. cin中的注意事项

    猎豹网校C++ Primer学习笔记 - ostartech - 博客园 https://www.cnblogs.com/wxl845235800/p/11396323.html 在VS中使用cin& ...

  6. selenium元素input的value值设置【node.js版本】

    driver.executeScript(‘document.getElementById(“id”).value=“value”’); 这个操作就类似于//$("#id").va ...

  7. osg::Camera example

    #ifdef _WIN32 #include <Windows.h> #endif // _WIN32 #include<iostream> #include <osgV ...

  8. 阶段5 3.微服务项目【学成在线】_day18 用户授权_13-细粒度授权-细粒度授权介绍

    3 细粒度授权 3.1 需求分析 什么是细粒度授权? 细粒度授权也叫数据范围授权,即不同的用户所拥有的操作权限相同,但是能够操作的数据范围是不一样的.一个 例子:用户A和用户B都是教学机构,他们都拥有 ...

  9. ubuntu 18.04安装mysql 8

    wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.10-1_all.deb sudo dpkg -i mysql-apt-config_0. ...

  10. jQuery BlockUI Plugin Demo 4(Element Blocking Examples)

    Element Blocking Examples This page demonstrates how to block selected elements on the page rather t ...