.NetCore数据库依赖注入
这里用的是sqlserver,postgreSQL也可以使用(mysql没试过,不过应该都能用)
1、项目引用Nuget包
我的项目是.net5框架的,所以不是使用的最新的包
1.)引用System.Data.SqlClient,连接数据库使用
2.)引用System.Configuration.ConfigurationManager,读取配置文件使用
2、生成实体模板类
添加上下文对象
3、从配置⽂件appsettings.json连接数据库
1.在数据库上下⽂xxxContext.cs中添加属性ConnectionString字段从ConnectionString获取连接字符串
public static string ConnectionString { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
if (!optionsBuilder.IsConfigured)
{
optionsBuilder.UseSqlServer(ConnectionString);
}
}
将对象添加到上下文对象中,代码如下:
public class AppDbContext : DbContext{public AppDbContext(){}public AppDbContext(DbContextOptions<AppDbContext> options) : base(options){}public static string ConnectionString { get; set; }protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder){if (!optionsBuilder.IsConfigured){optionsBuilder.UseSqlServer(ConnectionString);}}public virtual DbSet<WxUsers> WxUsers { get; set; }protected override void OnModelCreating(ModelBuilder modelBuilder){modelBuilder.Entity<WxUsers>(entity =>{entity.Property(e => e.id).ValueGeneratedNever();});}}
打开appsettings.json添加数据库连接字符串
打开Startup.cs⽂件在ConfigureServices⽅法⾥给我们添加的属性ConnectionString赋值
4、使用linq语句示例
需要先依赖注入上下文对象
也可直接在方法里
using(AppDbContext dbcontext = new AppDbContext()){
var aaa = dbcontext.WxUsers.Where(p => p.open_id == open_id).FirstOrDefault();
}
以上参考链接:
.NetCore连接SqlServer或MySql数据库创建实体Model使用EFCore - 百度文库https://wenku.baidu.com/view/3bddda062c60ddccda38376baf1ffc4ffe47e2e3.html
.NetCore数据库依赖注入相关推荐
- 跟我一起学.NetCore之依赖注入
前言 现阶段而言,依赖注入相关组件如果不会用一两个,感觉在Code的世界里肯定是落伍了,最起码得有工厂模式的思想,知道这样做的好处:提及到依赖注入,通常会关联出两个概念:Ioc(控制反转)和DI(依赖 ...
- 跟我一起学.NetCore之依赖注入作用域和对象释放
前言 上一小节简单阐述了依赖注入及Asp.NetCore中自带依赖注入组件的常规用法,其中提到容器管控了自己创建对象的生命周期,包含了三种生命周期:Singleton.Scoped.Transient ...
- .NetCore的依赖注入
//MVC自带的三种依赖注入方式 //MVC自带的三种依赖注入方式public WeatherForecastController(ILogger<WeatherForecastControll ...
- NetCore框架详解 -------四、.NetCore框架对依赖注入原则 的技术实现和运行原理
前三章主要从理论角度讲述了依赖注入原则及所衍生实现技术和手段产生的原因.发展和当前所处状况.大部分开发人为前三章对自己的技术水平的提高设有立竿见影的直接作用,但的我在里还是要说一下,前三章不但可以使开 ...
- Android 开源项目android-open-project工具库解析之(一) 依赖注入,图片缓存,网络相关,数据库orm工具包,Android公共库...
一.依赖注入DI 通过依赖注入降低View.服务.资源简化初始化.事件绑定等反复繁琐工作 AndroidAnnotations(Code Diet) android高速开发框架 项目地址:https: ...
- Asp.NetCore依赖注入和管道方式的异常处理及日志记录
前言 在业务系统,异常处理是所有开发人员必须面对的问题,在一定程度上,异常处理的能力反映出开发者对业务的驾驭水平:本章将着重介绍如何在 WebApi 程序中对异常进行捕获,然后利用 Nlog ...
- mysql asp.net core_基于 ASP.NET Core 2.0 WebAPI 后台框架搭建(2) - EF Core (MySQL) CodeFirst 数据库迁移与依赖注入...
概述 上一章,我们简单的搭建了依赖注入的三层架构,但是,没有真正的使用,而我们现在就使用MySQL数据,基于 EF Core 的 DbFirst 进行框架搭建. 步骤 1. 右击 Entity 项目, ...
- 利用ASP.netCore自带DI(DependencyInjection)实现批量依赖注入
转载来源 http://www.cnblogs.com/xiaoliangge/p/7642372.html ASP.net Core自带DI(依赖注入),用法如下: services.AddScop ...
- .net 调用url接口_.NetCore中Quartz.NET的依赖注入
更多精彩,请点击上方蓝字关注我们!关于上位机体验课你有两种选择↓:4月20日-24日晚20:00-21:30 介绍 Quartz.NET是一个方便的库,允许您通过实现IJob接口来安排重复任务.然而, ...
最新文章
- 一文彻底搞懂 zookeeper 核心知识点(修订版)
- python基础一入门必备知识-Python数据分析入门必备基础知识
- 使用 JSSE 定制 SSL 连接的属性--转载
- 突发!吴恩达确诊新冠,46岁生日还有不到3个月
- Activity的回调机制---Activity学习笔记(三)
- mybatis简单案例源码详细【注释全面】——前期准备
- 关于数据库的水平切分和垂直切分的一些概念(转)
- linux开坑记--常用的3个命令
- JDK源码解析--ArrayList
- java 加法 溢出_关于数字:Java 8 Unsigned Integer加法和潜在的溢出
- 回归预测的评价指标(附python代码)
- 沟通CTBS,加快山东海化金蝶EAS远程接入
- fanuc换刀宏程序详解_FANUC宏程序大全+实例讲解
- 怎么申请企业邮箱,企业邮箱快速登录入口
- Cell Reports:青年发育过程中脑血流与功能磁共振ALFF耦合
- 在win10基础上安装Ubuntu16.04双系统(双硬盘)
- Matlab 字符串时间戳转化为数值(以秒或毫秒为单位)
- 普通人要赚钱,真的需要换一换方法了
- python项目的QQ机器人使用及部署在腾讯云服务器
- [Nginx]Ngnix基础
热门文章
- linux逻辑卷和磁盘配额
- 卡尔曼滤波和Wiener-Kolmogorov 滤波的相对优点
- AEJoy —— 表达式之模拟超越与反弹(四)【JS】
- 817计算机考研资料,华中科技大学硕士入学考试817工程材料考研大纲
- UDP协议网络控制播放器指令集-发行版本
- aspect 方法入参 获取_谈谈Spring AOP中@Aspect的高级用法示例
- mac安装cnpm安装失败
- GIT仓库、源码管理服务器gitea的安装、htttps访问
- GWAS | 全基因组关联分析 | PLINK | 实战 | 统计遗传学
- 初中英语人教版教案三-Leo老师