EF Entity Framework Core DBContext中文文档
Add(Object)
以添加状态开始跟踪给定的实体和任何其他尚未被跟踪的可访问实体,以便在调用SaveChanges()时将它们插入数据库。
使用State设置单个实体的状态。
Add<TEntity>(TEntity)
以添加状态开始跟踪给定的实体和任何其他尚未被跟踪的可访问实体,以便在调用SaveChanges()时将它们插入数据库。
使用State设置单个实体的状态。
AddAsync(Object, CancellationToken)
以添加状态开始跟踪给定的实体和任何其他尚未被跟踪的可访问实体,以便在调用SaveChanges()时将它们插入数据库。
使用State设置单个实体的状态。
这个方法是异步的,只允许特殊的值生成器,如'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy '使用的那个。来异步访问数据库。对于所有其他情况,应该使用非异步方法。
AddAsync<TEntity>(TEntity, CancellationToken)
以添加状态开始跟踪给定的实体和任何其他尚未被跟踪的可访问实体,以便在调用SaveChanges()时将它们插入数据库。
这个方法是异步的,只允许特殊的值生成器,如'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy '使用的那个。来异步访问数据库。对于所有其他情况,应该使用非异步方法。
AddRange(IEnumerable<Object>)
以添加状态开始跟踪给定的实体和任何其他尚未被跟踪的可访问实体,以便在调用SaveChanges()时将它们插入数据库
AddRange(Object[])
以添加状态开始跟踪给定的实体和任何其他尚未被跟踪的可访问实体,以便在调用SaveChanges()时将它们插入数据库。
AddRangeAsync(Object[])
以添加状态开始跟踪给定的实体和任何其他尚未被跟踪的可访问实体,以便在调用SaveChanges()时将它们插入数据库。
这个方法是异步的,只允许特殊的值生成器,如'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy '使用的那个。来异步访问数据库。对于所有其他情况,应该使用非异步方法。
AddRangeAsync(IEnumerable<Object>, CancellationToken)
以添加状态开始跟踪给定的实体和任何其他尚未被跟踪的可访问实体,以便在调用SaveChanges()时将它们插入数据库。
这个方法是异步的,只允许特殊的值生成器,如'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy '使用的那个。来异步访问数据库。对于所有其他情况,应该使用非异步方法。
Attach(Object)
默认情况下,使用未更改的状态开始跟踪给定的实体和可从给定实体访问的条目,但是当使用不同的状态时,请参阅下面的情况。
通常,在调用SaveChanges()之前不会执行任何数据库交互。
将执行导航属性的递归搜索,以查找context尚未跟踪的可访问实体。找到的所有实体都将由context跟踪。
对于具有生成的键的实体类型,如果一个实体设置了其主键值,那么将在未更改状态下跟踪它。如果未设置主键值,则将以添加状态跟踪它。这有助于确保只插入新实体。如果将主键属性设置为属性类型的CLR默认值以外的任何值,则认为实体的主键值已设置。
对于没有生成键的实体类型,状态集始终保持不变。
使用State设置单个实体的状态。
Attach<TEntity>(TEntity)
默认情况下,使用未更改的状态开始跟踪给定的实体和可从给定实体访问的条目,但是当使用不同的状态时,请参阅下面的情况。
通常,在调用SaveChanges()之前不会执行任何数据库交互。
将执行导航属性的递归搜索,以查找context尚未跟踪的可访问实体。找到的所有实体都将由context跟踪。
对于具有生成的键的实体类型,如果一个实体设置了其主键值,那么将在未更改状态下跟踪它。如果未设置主键值,则将以添加状态跟踪它。这有助于确保只插入新实体。如果将主键属性设置为属性类型的CLR默认值以外的任何值,则认为实体的主键值已设置。
对于没有生成键的实体类型,状态集始终保持不变。
AttachRange(IEnumerable<Object>)
默认情况下,使用未更改的状态开始跟踪给定实体和可从给定实体获得的条目,但是当使用不同的状态时,请参阅下面的情况。
通常,在调用SaveChanges()之前不会执行任何数据库交互。
将执行导航属性的递归搜索,以查找context尚未跟踪的可访问实体。找到的所有实体都将由context跟踪。
对于具有生成的键的实体类型,如果一个实体设置了其主键值,那么将在未更改状态下跟踪它。如果未设置主键值,则将以添加状态跟踪它。这有助于确保只插入新实体。如果将主键属性设置为属性类型的CLR默认值以外的任何值,则认为实体的主键值已设置。
对于没有生成键的实体类型,状态集始终保持不变。
使用State设置单个实体的状态。
AttachRange(Object[])
默认情况下,使用未更改的状态开始跟踪给定实体和可从给定实体获得的条目,但是当使用不同的状态时,请参阅下面的情况。
通常,在调用SaveChanges()之前不会执行任何数据库交互。
将执行导航属性的递归搜索,以查找context尚未跟踪的可访问实体。找到的所有实体都将由context跟踪。
对于具有生成的键的实体类型,如果一个实体设置了其主键值,那么将在未更改状态下跟踪它。如果未设置主键值,则将以添加状态跟踪它。这有助于确保只插入新实体。如果将主键属性设置为属性类型的CLR默认值以外的任何值,则认为实体的主键值已设置。
对于没有生成键的实体类型,状态集始终保持不变。
使用State设置单个实体的状态。
Dispose()
释放为此context分配的资源。
DisposeAsync()
释放为此context分配的资源。
Entry(Object)
获取给定实体的EntityEntry。条目提供了对实体更改跟踪信息和操作的访问。
可以在未跟踪的实体上调用此方法。然后可以在返回的条目上设置State属性,让context开始跟踪指定状态下的实体。
Entry<TEntity>(TEntity)
获取给定实体的EntityEntry<TEntity>。条目提供了对实体更改跟踪信息和操作的访问
Equals(Object)
确定指定的对象是否等于当前对象。
Find(Type, Object[])
查找具有给定主键值的实体。如果context正在跟踪具有给定主键值的实体,则立即返回该实体,而不向数据库发出请求。否则,将向数据库查询具有给定主键值的实体,如果找到该实体,则将其附加到context并返回。如果没有找到任何实体,则返回null。
Find<TEntity>(Object[])
查找具有给定主键值的实体。如果context正在跟踪具有给定主键值的实体,则立即返回该实体,而不向数据库发出请求。否则,将向数据库查询具有给定主键值的实体,如果找到该实体,则将其附加到context并返回。如果没有找到任何实体,则返回null。
FindAsync(Type, Object[])
查找具有给定主键值的实体。如果context正在跟踪具有给定主键值的实体,则立即返回该实体,而不向数据库发出请求。否则,将向数据库查询具有给定主键值的实体,如果找到该实体,则将其附加到context并返回。如果没有找到任何实体,则返回null。
FindAsync(Type, Object[], CancellationToken)
查找具有给定主键值的实体。如果context正在跟踪具有给定主键值的实体,则立即返回该实体,而不向数据库发出请求。否则,将向数据库查询具有给定主键值的实体,如果找到该实体,则将其附加到context并返回。如果没有找到任何实体,则返回null。
FindAsync<TEntity>(Object[])
查找具有给定主键值的实体。如果context正在跟踪具有给定主键值的实体,则立即返回该实体,而不向数据库发出请求。否则,将向数据库查询具有给定主键值的实体,如果找到该实体,则将其附加到context并返回。如果没有找到任何实体,则返回null。
FindAsync<TEntity>(Object[], CancellationToken)
查找具有给定主键值的实体。如果context正在跟踪具有给定主键值的实体,则立即返回该实体,而不向数据库发出请求。否则,将向数据库查询具有给定主键值的实体,如果找到该实体,则将其附加到context并返回。如果没有找到任何实体,则返回null。
GetHashCode()
作为默认的哈希函数。
OnConfiguring(DbContextOptionsBuilder)
重写此方法以配置用于此context的数据库(和其他选项)。对于创建的每个context实例,都将调用此方法。基本实现什么也不做。
在DbContextOptions实例可能传递给构造函数也可能没有传递给构造函数的情况下,可以使用IsConfigured来确定是否已经设置了选项,并跳过onconfiguration (DbContextOptionsBuilder)中的部分或全部逻辑。
OnModelCreating(ModelBuilder)
重写此方法,以进一步配置根据约定从派生context中DbSet<TEntity>属性中公开的实体类型发现的模型。结果模型可能被缓存,并被派生context的后续实例重用。
Query<TQuery>()
创建一个DbSet<TEntity>,可用于查询TQuery的实例。
Remove(Object)
开始跟踪处于已删除状态的给定实体,以便在调用SaveChanges()时将其从数据库中删除。
Remove<TEntity>(TEntity)
开始跟踪处于已删除状态的给定实体,以便在调用SaveChanges()时将其从数据库中删除。
RemoveRange(Object[])
开始跟踪处于已删除状态的给定实体,以便在调用SaveChanges()时将其从数据库中删除。
RemoveRange(IEnumerable<Object>)
Begins tracking the given entity in the Deleted state such that it will be removed from the database when SaveChanges() is called.
SaveChanges(Boolean)
将在此context中所做的所有更改保存到数据库。
此方法将自动调用DetectChanges(),以便在保存到底层数据库之前发现对实体实例的任何更改。这可以通过AutoDetectChangesEnabled来禁用。
SaveChanges()
将在此context中所做的所有更改保存到数据库。
此方法将自动调用DetectChanges(),以便在保存到底层数据库之前发现对实体实例的任何更改。这可以通过AutoDetectChangesEnabled来禁用。
SaveChangesAsync(CancellationToken)
将在此context中所做的所有更改保存到数据库。
此方法将自动调用DetectChanges(),以便在保存到底层数据库之前发现对实体实例的任何更改。这可以通过AutoDetectChangesEnabled来禁用。
不支持同一context实例上的多个活动操作。使用'await'确保在此context中调用另一个方法之前完成所有异步操作。
SaveChangesAsync(Boolean, CancellationToken)
将在此context中所做的所有更改保存到数据库。
此方法将自动调用DetectChanges(),以便在保存到底层数据库之前发现对实体实例的任何更改。这可以通过AutoDetectChangesEnabled来禁用。
不支持同一context实例上的多个活动操作。使用'await'确保在此context中调用另一个方法之前完成所有异步操作。
Set<TEntity>()
创建一个DbSet<TEntity>,可用于查询和保存TEntity实例。
ToString()
返回表示当前对象的字符串。
Update(Object)
默认情况下,使用修改后的状态开始跟踪给定的实体和可从给定实体访问的条目,但是当使用不同的状态时,请参阅下面的情况。
通常,在调用SaveChanges()之前不会执行任何数据库交互。
将执行导航属性的递归搜索,以查找context尚未跟踪的可访问实体。找到的所有实体都将由context跟踪。
对于具有生成的键的实体类型,如果一个实体设置了其主键值,那么将在修改状态下跟踪它。如果未设置主键值,则将以添加状态跟踪它。这有助于确保插入新实体,同时更新现有实体。如果将主键属性设置为属性类型的CLR默认值以外的任何值,则认为实体的主键值已设置。
对于没有生成键的实体类型,状态集总是被修改。
使用State设置单个实体的状态。
Update<TEntity>(TEntity)
默认情况下,使用修改后的状态开始跟踪给定实体和可从给定实体访问的条目,但是当使用不同的状态时,请参阅下面的情况。
通常,在调用SaveChanges()之前不会执行任何数据库交互。
将执行导航属性的递归搜索,以查找context尚未跟踪的可访问实体。找到的所有实体都将由context跟踪。
对于具有生成的键的实体类型,如果一个实体设置了其主键值,那么将在修改状态下跟踪它。如果未设置主键值,则将以添加状态跟踪它。这有助于确保插入新实体,同时更新现有实体。如果将主键属性设置为属性类型的CLR默认值以外的任何值,则认为实体的主键值已设置。
对于没有生成键的实体类型,状态集总是被修改。
使用State设置单个实体的状态。
UpdateRange(Object[])
UpdateRange(IEnumerable<Object>)
默认情况下,使用修改后的状态开始跟踪给定实体和可从给定实体访问的条目,但是当使用不同的状态时,请参阅下面的情况。
通常,在调用SaveChanges()之前不会执行任何数据库交互。
将执行导航属性的递归搜索,以查找context尚未跟踪的可访问实体。找到的所有实体都将由context跟踪。
对于具有生成的键的实体类型,如果一个实体设置了其主键值,那么将在修改状态下跟踪它。如果未设置主键值,则将以添加状态跟踪它。这有助于确保插入新实体,同时更新现有实体。如果将主键属性设置为属性类型的CLR默认值以外的任何值,则认为实体的主键值已设置。
对于没有生成键的实体类型,状态集总是被修改。
使用State设置单个实体的状态。
EF Entity Framework Core DBContext中文文档的更多相关文章
- Entity Framework Core 中文入门文档
点击链接查看文档: Entity Framework Core 中文入门文档
- 002从零开始入门Entity Framework Core——DbContext生存期、配置和初始化
阅读须知:本文为入门介绍.指引文章,所示代码皆为最简易(或仅为实现功能)的演示示例版本,不一定切实符合个人(企业)实际开发需求. 一.DbContext生存期 DbContext 的生存期从创建实例时 ...
- ABP 教程文档 1-1 手把手引进门之 ASP.NET Core & Entity Framework Core(官方教程翻译版 版本3.2.5)
本文是ABP官方文档翻译版,翻译基于 3.2.5 版本 官方文档分四部分 一. 教程文档 二.ABP 框架 三.zero 模块 四.其他(中文翻译资源) 本篇是第一部分的第一篇. 第一部分分三篇 1- ...
- 【EF】Entity Framework Core 2.0 特性介绍和使用指南
阅读目录 前言 获取和使用 新特性 项目升级和核心API变化 下一步计划 遗憾的地方 回到目录 前言 这是.Net Core 2.0生态生态介绍的最后一篇,EF一直是我喜欢的一个ORM框架,随着版本升 ...
- ASP.NET Core 中文文档 第三章 原理(10)依赖注入
原文:Dependency Injection 作者:Steve Smith 翻译:刘浩杨 校对:许登洋(Seay).高嵩 ASP.NET Core 的底层设计支持和使用依赖注入.ASP.NET Co ...
- [UWP小白日记-11]在UWP中使用Entity Framework Core(Entity Framework 7)操作SQLite数据库(一)
前言 本文中,您将创建一个通用应用程序(UWP),使用Entity Framework Core(Entity Framework 7)框架在SQLite数据库上执行基本的数据访问. 准备: Enti ...
- Entity Framework Core 2.0 中使用LIKE 操作符
Entity Framework Core 2.0 中使用LIKE 操作符 不定时更新翻译系列,此系列更新毫无时间规律,文笔菜翻译菜求各位看官老爷们轻喷,如觉得我翻译有问题请挪步原博客地址 本博文翻译 ...
- 浅析Entity Framework Core中的并发处理
前言 Entity Framework Core 2.0更新也已经有一段时间了,园子里也有不少的文章.. 本文主要是浅析一下Entity Framework Core的并发处理方式. 1.常见的并发处 ...
- UWP: 在 UWP 中使用 Entity Framework Core 操作 SQLite 数据库
在应用中使用 SQLite 数据库来存储数据是相当常见的.在 UWP 平台中要使用 SQLite,一般会使用 SQLite for Universal Windows Platform 和 SQLit ...
随机推荐
- GeneralUpdate2.1.0发布
GeneralUpdate GeneralUpdate是基于.net framwork开发的一款(c/s应用)自动升级程序.该组件将更新的核心部分抽离出来方便应用于多种项目当中目前适用于wpf,控制台 ...
- e3mall商城的归纳总结10之freemarker的使用和sso单点登录系统的简介
敬给读者的话 本节主要讲解freemarker的使用以及sso单点登录系统,两种技术都是比较先进的技术,freemarker是一个模板,主要生成一个静态静态,能更快的响应给用户,提高用户体验. 而ss ...
- 【趣味设计模式系列】之【代理模式4--ASM框架解析】
1. 简介 ASM是assemble英文的简称,中文名为汇编,官方地址https://asm.ow2.io/,下面是官方的一段英文简介: ASM is an all purpose Java byte ...
- 利用Decorator和SourceMap优化JavaScript错误堆栈
配合源码阅读体验更佳. 最近收到用户吐槽 @cloudbase/js-sdk(云开发Cloudbase的JavaScript SDK)的报错信息不够清晰,比如下面这条报错: 这属于业务型报错,对于熟悉 ...
- Python开发的入门教程(七)-切片
介绍 本文主要介绍Python中切片的基本知识和使用 对list进行切片 取一个list的部分元素是非常常见的操作.比如,一个list如下: >>> L = ['Adam', 'Li ...
- 不支持原子性的 Redis 事务也叫事务吗?
文章收录在 GitHub JavaKeeper ,N线互联网开发必备技能兵器谱 假设现在有这样一个业务,用户获取的某些数据来自第三方接口信息,为避免频繁请求第三方接口,我们往往会加一层缓存,缓存肯定要 ...
- 剑指 Offer 55 - I. 二叉树的深度
题目描述 输入一棵二叉树的根节点,求该树的深度.从根节点到叶节点依次经过的节点(含根.叶节点)形成树的一条路径,最长路径的长度为树的深度. 例如: 给定二叉树 [3,9,20,null,null,15 ...
- Activiti7 流程变量(理论)
什么是流程变量 流程变量在Activiti中是一个非常重要的角色,流程运转有时需要靠流程变量,业务系统和Activiti结合时少不了流程变量,流程变量就是Activiti在管理工作流时根据管理需要而设 ...
- Solon详解(六)- Solon的校验扩展框架使用与扩展
Solon详解系列文章: Solon详解(一)- 快速入门 Solon详解(二)- Solon的核心 Solon详解(三)- Solon的web开发 Solon详解(四)- Solon的事务传播机制 ...
- blazemeter和jmeter
前言 咸鱼的生活总是那么短暂,年轻还是要多学习 blazemeter BlazeMeter是一款可以记录所有HTTP流量并在10分钟内创建一个负载测试并且与Apache JMeter兼容的chrome ...