当前位置: 首页 > news >正文

.net 6 引入EFCore

这里默认使用sql server数据库 DBFirst

nuget引入程序集

  • Microsoft.EntityFrameworkCore

  • Microsoft.EntityFrameworkCore.SqlServer

  • Microsoft.EntityFrameworkCore.Design

  • Microsoft.EntityFrameworkCore.Tools

  • Microsoft.Extensions.Logging.Console

执行脚本

设置DAL层项目为启动项

工具 - nuget包管理器 - 程序包管理器控制台

输入以下指令并执行(用来连接数据库,创建DBContext)

Scaffold-DbContext "Data Source=DESKTOP-440HAKQ;Initial Catalog=Factory;Persist Security Info=True;User ID=sa;Password=你的密码" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -ContextDir Models -Context FactoryDbContext -Force

如果修改数据库之后想同步Model,只需要再次执行该命令即可,不过这样会覆盖原有文件,注意重新修改DbContext

FactoryDbContext 类就是service层可以使用的db上下文

修改appsettings.json

ConnectionStrings": {"FactoryDBString": "Data Source=DESKTOP-440HAKQ;Initial Catalog=Test;Persist Security Info=True;User ID=sa;Password=你的密码"},

修改FactoryDbContext文件

public static readonly ILoggerFactory MyLoggerFactory = LoggerFactory.Create(builder => { builder.AddConsole(); });protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder){if (!optionsBuilder.IsConfigured){//根据配置文件读取数据库连接IConfiguration configuration = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json").Build();string factorySqlStr = configuration.GetConnectionString("FactoryDBString");//使用日志记录sql语句optionsBuilder.UseLoggerFactory(MyLoggerFactory).EnableSensitiveDataLogging().UseSqlServer(factorySqlStr);}}

Autofac注入dbcontext

program中注入

buider.RegisterType<CustomerDbContext>().As<DbContext>();

http://www.lryc.cn/news/15345.html

相关文章:

  • MySQL------自定义排序
  • FFMPEG自学二 ⾳频编码实战
  • ​一致魔芋在北交所上市:市值突破11亿元,吴平夫妇为实控人​
  • 进程或线程终止是否会释放锁
  • mysql复制表提示某些为null字段无效
  • 【数据库】redis 配置文件与发布订阅
  • ChatGPT来了,英语不能丢,但我不想上班
  • 【LeetCode】二叉树的直径 [E](二叉树)
  • Mybatis框架详解(全)
  • 2023年爆火的csgo搬砖项目详细拆解,steam搬砖长期稳定
  • C语言实现动态管理通讯录信息系统(静态通讯录plus版)
  • 核心技术: springboot 启动类加载时方法执行的几种实现方式, bean声明周期, 启动执行顺序
  • 拒绝背锅:测试项目中的风险管理一定要知道
  • 20-js本地存储
  • ABAP 辨析ON INPUT|REQUEST|CHAIN-INPUT|CHAIN-REQUEST
  • LeetCode:逆波兰式;
  • 为什么阳康后,感觉自己变傻了?
  • 考公和大厂40万年薪的offer,选哪个?
  • 多线程环境下调用 HttpWebRequest 并发连接限制
  • vue3-element-admin搭建
  • 蓝海创意云vLive虚拟直播亮相2023昆山元宇宙产品展览会
  • ThreadLocal线程变量
  • 【linux安装redis详解】小白如何安装部署redis,linux安装部署只需5步骤(图文结合,亲测有效)
  • 2023只会“点点点”,被裁只是时间问题,高薪的自动化测试需要掌握那些技能?
  • C语言【柔性数组】
  • AcWing275. 传纸条
  • 圆角矩形的绘制和曲线均匀化
  • 【Linux】环境变量,命令行参数,main函数三个参数保姆教学
  • 美国访问学者生活中有哪些饮食文化特点?
  • RxJava中的Subject