.NET CORE 下 MariaDB DBfirst 生成model层 并配置连接参数
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层 并配置连接参数的更多相关文章
- .NET Core 获取数据库上下文实例的方法和配置连接字符串
目录 .NET Core 获取数据库上下文实例的方法和配置连接字符串 ASP.NET Core 注入 .NET Core 注入 无签名上下文 OnConfigure 配置 有签名上下文构造函数和自己n ...
- Yii2.0 自动生成 model 层
yii2.0 里一个表对应一个model,可以自动生成 前台使用的model在frontend(backend)/web目录下的gii生成例如(www.liqiuyue.com/yii /fronte ...
- Asp.Net Core下使用swagger生成api文档
目录 一.前期准备 二.配置Swagger 三.参考 .Net Core中有两个集成NSwag的包,分别为Swashbuckle和NSwag.两者的配置大同小异.这里以NSwag为例. 一.前期准备 ...
- .net core mvc + mysql dbfirst 生成 ado.net 数据模型
1.点击“工具”->“NuGet包管理器”->“程序包管理器控制台” 安装一下包 Install-Package MySql.Data.EntityFrameworkCore -Pre I ...
- 自动生成Model层中对应表的各个字段
select 'public '+ case t.name when 'varchar' then 'string' when 'smallint' then 'Int16' when 'int' t ...
- yii2 model层中配置常量与list
- 4.5 .net core下直接执行SQL语句并生成DataTable
.net core可以执行SQL语句,但是只能生成强类型的返回结果.例如var blogs = context.Blogs.FromSql("SELECT * FROM dbo.Blogs& ...
- .net core下直接执行SQL语句并生成DataTable
.net core可以执行SQL语句,但是只能生成强类型的返回结果.例如var blogs = context.Blogs.FromSql("SELECT * FROM dbo.Blogs& ...
- .NET Core下使用gRpc公开服务(SSL/TLS)
一.前言 前一阵子关于.NET的各大公众号都发表了关于gRpc的消息,而随之而来的就是一波关于.NET Core下如何使用的教程,但是在这众多的教程中基本都是泛泛而谈,难以实际在实际环境中使用,而该篇 ...
随机推荐
- 多网卡下如何配置指定IP走某个路由器(适用于外网不通,但是钉钉服务器通的情况)
# 多网卡下如何配置指定IP走某个路由器(适用于外网不通,但是钉钉服务器通的情况) ## 如何查看一个进程建立的网络连接,方式一 - 查看进程pid `ps -ef|grep dingtalk`- 查 ...
- win10下安装Kafka
去kafka官网(http://kafka.apache.org/downloads.html)下最新包(目前是2.3.0),不分操作系统,直接点二进制压缩包链接跳过去下载即可 -> 解压到你指 ...
- InfluxDB+Grafana大数据监控系列之基础环境部署(一)
一.单节点环境部署 机器节点信息及 InfluxDB.Grafana 版本选择: 节点 Linux版本 部署服务 10.223.1.198 Centos 6.8 InfluxDB 1.7.7 10.2 ...
- (三)UML之类图关系
泛化(generalization):表示is-a的关系,是对象之间耦合度最大的一种关系,子类继承父类的所有细节.直接使用语言中的继承表达.在类图中使用带三角箭头的实线表示,箭头从子类指向父类.如下图 ...
- 【Leetcode_easy】686. Repeated String Match
problem 686. Repeated String Match solution1: 使用string类的find函数: class Solution { public: int repeate ...
- iOS-GCD处理后台线程和UI线程的交互
一个例子: 在iPhone上做一个下载网页的功能,就是:在iPhone上放一个按钮,单击按钮时,显示一个转动的圆圈,表示正在进行下载,下载完成后,将内容加载到界面上的一个文本控件上. 使用GCD前: ...
- conda安装的国内镜像配置,实现快速下载
conda安装的国内镜像配置,实现快速下载 anaconda的所有的软件包全部在国外,安装起来很麻烦,关键是下载速度慢,而且经常中断,所以需要配置国内安装的镜像,下载速度就很快了. 一.conda换国 ...
- webpack简单配置
1.代理配置 需要修改一下配置文件 config里的index.js,根据接口特点自主选取 2.解决图标显示路径错误问题 项目在打包完成后如果出现图片显示不了的问题,需要进行如下配置
- PC电脑端支付宝扫码付款出现编码错误提示原因
给这家公司做各大场景的支付 涉及到微信内置H5支付 其他浏览器唤醒微信客户端支付 PC扫码支付 和支付宝相应的支付,但今天进行PC扫码支付时遇到一些编码问题,流程能走通. 调试错误,请回到请求来源地, ...
- HTML让字体闪动和滚动显示
存粹的HTML让字体闪动显示: <html> <head> <title>TEST</title> <style type="text/ ...