EFCore(五)——多个DBContext的Code First指定对应的DBContext更新
此环境为ASP.NET Core的项目
1、在需要更新的DBContext里添加空的构造函数

2、打开Nuget命令行选择对应的目录位置


3、带参数-Context指定对应的DBContext
1、 $env:ASPNETCORE_ENVIRONMENT="Development"
2、add-migration -context DBContextBase init20211101-01
3、Update-Database -Context DBContextBase init20211101-01
实际发生的变化:
1、add-migration -context DBContextBase init20211101-01 会在migration下创建个新的20211101104858_init20211101-01.cs的文件
这个类里有两个方法:
up:表示新增的内容,包括加字段,添加表都在这里面
down:表示对原有表的删除和更改操作,包括删除字段、删除表、更新表的字段
1)与migration文件夹下的DBContextBaseModelSnapshot.cs内容做比对,比如新增了一张表student,但是DBContextBaseModelSnapshot.cs里已经有对应student添加的语句则
20211101104858_init20211101-01.cs里的up和down方法均为空,不对数据库做更改
2)若比对有差异则在20211101104858_init20211101-01.cs里的up和down方法里更新变化的内容,同时把结果更新到DBContextBaseModelSnapshot.cs创建表里
2、Update-Database -Context DBContextBase init20211101-01
1)将对应的变化更新到数据库
2)将插入一条更新记录到__efmigrationshistory表里
EFCore(五)——多个DBContext的Code First指定对应的DBContext更新的更多相关文章
- Entity Framework 6 Code First的简单使用和更新数据库结构
一.安装Entity Framework 6 在项目中右击选择“管理NuGet程序包",联机搜索Entity Framework,点击安装 二.配置数据库连接 在App.config中加入数 ...
- OER 7451 in Load Indicator : Error Code = OSD-04500:指定了非法选项
alert 日志错误OER 7451 in Load Indicator : Error Code = OSD-04500:指定了非法选项 Sun Apr 22 11:15:51 2012 OER 7 ...
- 在EntityFramework6中管理DbContext的正确方式——3环境上下文DbContext vs 显式DbContext vs 注入DbContext(外文翻译)
(译者注:使用EF开发应用程序的一个难点就在于对其DbContext的生命周期管理,你的管理策略是否能很好的支持上层服务 使用独立事务,使用嵌套事务,并行执行,异步执行等需求? Mehdi El Gu ...
- Salesforce LWC学习(三十五) 使用 REST API实现不写Apex的批量创建/更新数据
本篇参考: https://developer.salesforce.com/docs/atlas.en-us.224.0.api_rest.meta/api_rest/resources_compo ...
- [Phonegap+Sencha Touch] 移动开发77 Cordova Hot Code Push插件实现自己主动更新App的Web内容
原文地址:http://blog.csdn.net/lovelyelfpop/article/details/50848524 插件地址:https://github.com/nordnet/cord ...
- EF Code first主从表,删除更新从表
以order和orderItem为例,从表orderItem里有主表的orderId 想通过order.orderitems.add()或者remove()方法直接更新从表的话,必须在从表建立联合主键 ...
- Entity Framework 4.1 - Code First 指定外键名称
Entity Framework 4.1 中,生成外键的方式有以下几种: 1-指定导航属性,会自动生成外键,命名规则为:“表名_主键名”2-默认情况下与导航属性的主键名称相同的字段会自动被标记为外键, ...
- UVA 12436-Rip Van Winkle's Code(线段树的区间更新)
题意: long long data[250001]; void A( int st, int nd ) { for( int i = st; i \le nd; i++ ) data[i] = da ...
- Code First 指定外键名称
指定类外键有注释(DataAnnotation)和FluentAPI两种方式, 目前掌握的知识我们先把DataAnnotation可用的四种方式总结如下 第一种方法: //1-指定导航属性,会自动生成 ...
- abp(net core)+easyui+efcore仓储系统——ABP总体介绍(一)
在前面我已经介绍了ASP.NET MVC.ASP.NET Razor.WEBAPI等技术.我准备通过一个实践项目来整体应用一下之前介绍的技术.本系列是介绍基于ABP+EasyUI的Web开发框架的形成 ...
随机推荐
- 共促数字经济高质量发展,天翼云出席2024 IDC中国年度盛典!
9月11日,2024 IDC中国年度盛典暨颁奖典礼在上海盛大启幕.本次峰会以「AI时刻,欢迎来到下一个大事件」为主题,汇聚行业专家.意见领袖,深度探讨生成式AI.中国企业出海.创新业务模式.科技可持续 ...
- Q:linux上某个磁盘挂载不上
想把新创建的 /dev/datavg/data_lv 挂载到 /mysql 目录上 mkfs -t xfs -f /dev/datavg/data_lv mount /dev/datavg/data_ ...
- P9869 [NOIP2023] 三值逻辑 题解
NOIP2023 T2 三值逻辑 题解 题面 思路 乍一看好像很并查集,而且不太难,但是, 注意到:按顺序运行这 \(m\) 条语句 事情并没有那么简单. 比如说如下情况: x1:=T x2:=x1 ...
- Ansible - [02] 基础配置以及常用操作场景
Ansible 基础配置 主配置文件:/etc/ansible/ansible.cfg ansible配置文件查找顺序 首先检测ANSIBLE_CONFIG变量定义的配置 其次检查当前目录下的./an ...
- Easyexcel(3-文件导出)
响应头设置 通过设置文件导出的响应头,可以自定义文件导出的名字信息等 //编码格式为UTF-8 response.setCharacterEncoding("UTF-8"); // ...
- MySQL2022.3.2
创建库 CREATE DATABASE STUDENT; 创建表 CREATE TABLE STU(SNO INT PRIMARY KEY,//主键SNM CHAR(2) NOT NULL,//不能为 ...
- pandas contains 函数
Series.str.contains( pat, # 要查询的字符串.要查询的或者正则表达式 case=True, # 是否对大小写敏感 flags=0, # 用来传给正则模块的参数,比如 flag ...
- 锐翊6800H-ES小主机PVE Windows11LTSC核显直通记录
因为之前做AIO所以开始捣鼓了下PVE虚拟化,又突发奇想想在PVE下挂一些Windows端的游戏,故有了这篇文章. 还有一个原因是网上的大部分教程对PVE8/AMD小主机并不适用. 本次使用的硬件/软 ...
- 深入解析 Druid 连接池:连接有效性检测与 Keep-Alive 机制
背景 在 Java 程序中,下面是一个经常会碰到的错误. Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communica ...
- MongoDB 复制集机制及原理
复制集的作用 MongoDB 复制集的主要意义在于实现服务高可用. 它的现实依赖于两个方面的功能: 数据写入时将数据迅速复制到另一个独立节点上 在接受写入的节点发生故障时自动选举出一个新的代替节点 在 ...