.NET 数据社区会议

.NET 数据社区站立会议大约每月一次(通常在周四)进行实时直播,流式传输到 YouTube、Twitch、Facebook 和 X。你可以借此机会与 .NET 数据团队和社区互动。 过去每集内容均在 YouTube 上提供,下面列出了包含每集内容的链接。

Summary

Date Area Title
2026 年 4 月 23 日 工具 用于自动执行 EF 组件的轻型框架
2026 年 3 月 19 日 DevArt dotConnect 和 Entity Developer 如何简化您的工作流程
2026 年 2 月 12 日 AI Adam 告诉我们有关 Microsoft.Extensions.DataIngestion 的信息
2025 年 11 月 20 日 Release EF 10 发布庆祝活动 🎉
2025 年 10 月 16 日 Migrations 杰里米·米勒分享他对移民和马滕的看法
2025 年 9 月 18 日 ORM Jiri 和 Nick 谈论 Dapper 和 EF Core 的经验
2025 年 8 月 21 日 ORM 学习 jOOQ,由卢卡斯·艾德尔讲解
2025 年 7 月 17 日 Couchbase Couchbase 具有 EF Core 提供程序
2025 年 6 月 19 日 矢量数据库 Microsoft.Extensions.VectorData - 访问 AI 应用中的矢量数据库
2025 年 5 月 14 日 Azure SQL 使用 Davide Mauri 进行 Azure SQL 矢量搜索
2025 年 4 月 24 日 EF Core Jiri 和 Shay 探讨 EF Core 测试,Maurycy 予以纠正
2025 年 3 月 19 日 EF Core 停止将 Entity Framework 用作 DTO 提供程序!
2025 年 3 月 6 日 Chroma 从 .NET 使用 Chroma 向量数据库
2025 年 1 月 22 日 Tips 上下文池、FromSql 和已编译查询
2024 年 11 月 20 日 Release EF Core 9:发布盛典
2024 年 6 月 26 日 SQL 架构 使用基于 .NET 的静态代码分析改进 SQL 架构和脚本
2024 年 3 月 15 日 Firebird 在 .NET 中利用 Firebird 的强大功能
2024 年 4 月 17 日 EF Core 映射 关于 EF Core 属性映射的所有信息
2024 年 3 月 20 日 GraphQL 采用 Hot Chocolate 14、Aspire 和 EF Core 的分散式应用程序
2024 年 3 月 6 日 值生成 EF Core 密钥和值生成
2024 年 2 月 21 日 SQL 翻译 使用 Zomp EF Core 扩展的窗口和二进制函数
2024 年 2 月 7 日 数据库并发 数据库并发和 EF Core:超越乐观并发
2024 年 1 月 24 日 数据库并发 数据库并发和 EF Core:ASP.NET 和 Blazor
2024 年 1 月 10 日 数据库并发 数据库并发和 EF Core
2023 年 11 月 29 日 新增功能 EF8 中的新增功能介绍
2023 年 10 月 18 日 文档数据库 介绍用于 EF Core 的 MongoDB 提供程序
2023 年 10 月 4 日 新增功能 无关大小:EF8 中的小功能
2023 年 9 月 20 日 复杂类型/DDD 复杂类型作为 EF8 中的值对象
2023 年 6 月 14 日 SQLite 在云和客户端之间同步数据(使用 SQLite)
2023 年 5 月 31 日 电动工具 EF Core Power Tools 的新 CLI 版本
2023 年 5 月 17 日 原始集合 EF Core 中基元值的集合
2023 年 4 月 19 日 EF 内部 EF Core 内部机制 - 模型生成
2023 年 3 月 22 日 HierarchyId 在 SQL Server 和 PostgreSQL 中使用 EF Core 中的分层数据
2023 年 3 月 8 日 EF 内部 EF Core 内部机制:IQueryable、LINQ 和 EF Core 查询管道
2023 年 2 月 22 日 MySQL MySQL 和 .NET:MySqlConnector 和 Pomelo EF Core 提供程序
2023 年 2 月 8 日 SQLite 将 SQLite 用于 .NET 和 EF Core
2023 年 1 月 11 日 FAQ Entity Framework Core 常见问题解答
2022 年 12 月 14 日 EF Core 计划 针对 Entity Framework Core 8 的计划
2022 年 11 月 16 日 新增功能 EF7 的旋风之旅
2022 年 11 月 7 日 模型构建 EF7 自定义模型约定
2022 年 10 月 19 日 批量更新 新增的 EF Core 7.0 API(批量更新)
2022 年 10 月 5 日 JSON 映射 JSON 列
2022 年 9 月 21 日 Azure 移动应用 Azure 移动应用和脱机同步
2022 年 8 月 24 日 SQL 翻译 EF Core 7 中新增了聚合函数支持
2022 年 8 月 10 日 WCF CoreWCF:路线图和 Q&A
2022 年 7 月 27 日 ADO.NET DbDataSource:System.Data 中引入的新抽象
2022 年 7 月 13 日 EF 侦听器 拦截此 EF7 预览版 6 事件
2022 年 6 月 29 日 EF 内部 DbContext 配置和生存期 - EF Core 体系结构第 2 部分
2022 年 6 月 15 日 TPH/TPT/TPC 使用 EF Core 时的 TPH、TPT 和 TPC 继承映射
2022 年 6 月 1 日 EF 内部 EF Core 体系结构:内部依赖项注入
2022 年 5 月 18 日 Testing 测试 EF Core 应用(第 2 部分)
2022 年 5 月 4 日 Pagination 数据库分页
2022 年 4 月 20 日 SaveChanges EF7 更新管道的性能改进
2022 年 4 月 6 日 Scaffolding EF7 中 T4 模板的数据库优先:早期展望
2022 年 3 月 9 日 GraphQL/OData GraphQL 和 OData:深入讨论
2022 年 2 月 23 日 实体框架 庆祝 .NET 20周年:Entity Framework
2022 年 2 月 9 日 Versioning 软件版本和相关材料
2022 年 1 月 26 日 Testing 测试 EF Core 应用
2022 年 1 月 12 日 EF Core 计划 EF7 计划
2021 年 12 月 1 日 GraphQL Hot Chocolate 12 和 GraphQL 2021
2021 年 11 月 17 日 新增功能 创造历史,探索 Cosmos:EF Core 6 回顾)
2021 年 11 月 3 日 Noda Time Noda Time
2021 年 10 月 6 日 临时表 SQL Server 临时表和 EF Core 6
2021 年 10 月 20 日 Docs ASP.NET 文档团队编写的 EF Core 和 ASP.NET Core
2021 年 9 月 22 日 PostgreSQL PostgreSQL 和 EF Core
2021 年 8 月 25 日 Dapper Dapper
2021 年 8 月 11 日 SQL 翻译 EF Core 的全局查询筛选器
2021 年 7 月 28 日 OData OData
2021 年 7 月 14 日 SQL 翻译 可视化数据库查询计划
2021 年 6 月 16 日 Azure Cosmos DB Azure Cosmos DB 和 EF Core
2021 年 6 月 2 日 模型构建 EF Core 已编译模型简介
2021 年 5 月 19 日 GraphQL 使用 GraphQL 构建新式应用
2021 年 5 月 5 日 Triggers EF Core 的触发器
2021 年 4 月 21 日 开源 开源贡献:如何为 EF Core 增添功能
4 月 7 日,2021 Azure SQL 面向云原生应用程序和开发人员的 Azure SQL
2021 年 3 月 24 日 EF Core 实用工具 EF Core Power Tools:新批次
2021 年 3 月 10 日 AMA Julie Lerman 与 EF Core:随心所问 (AMA)
2021 年 2 月 24 日 Performance EF Core 应用性能优化
2021 年 2 月 10 日 异常处理 Entity Framework Core 的类型化异常
2021 年 1 月 27 日 数据库项目 MSBuild.Sdk.SqlProj 简介
2021 年 1 月 13 日 Survey EF Core 6.0 调查结果
2020 年 12 月 2 日 LLBLGen Pro LLBLGen 设计器和 .NET 数据历史记录
2020 年 11 月 18 日 新增功能 EF Core 5.0 特别版社区专家组
2020 年 10 月 28 日 Collations EF Core 5.0 排序规则
2020 年 10 月 14 日 Azure Cosmos DB Cosmos DB:存储库模式 .NET 包装器 SDK
2020 年 9 月 20 日 空间类型 地理数据与 NetTopologySuite
2020 年 9 月 16 日 Migrations EF Core 5.0 中迁移的新增功能
2020 年 9 月 2 日 脱机同步 使用 DotMim.Sync 同步数据库
2020 年 8 月 19 日 Many-to-many EF Core 5.0 中的多对多
2020 年 8 月 5 日 EF 深入介绍 EF Core 深入介绍视频系列
2020 年 7 月 22 日 Scaffolding 将基架与 Handlebars 配合使用
2020 年 6 月 24 日 Blazor Blazor 中的 EF Core
2020 年 6 月 10 日 EF Core 实用工具 EF Core Power Tools
2020 年 5 月 6 日 Welcome! EF Core 社区会议简介

2026

4 月 23 日: 用于自动执行 EF 组件的轻型框架

加入我们的直播活动,Klaus Kirchhoff 将为您介绍“用于自动化 EF 组件的轻量级框架”。

Featuring:

Links:

3 月 19 日:dotConnect + Entity Developer 工具如何简化您的工作流程

请加入我们的活动,此次 DevArt 将展示 dotConnect 和 Entity Developer 如何简化 .NET 开发中的工作流。

Featuring:

Links:

2 月 12 日: Adam 告诉我们有关 Microsoft.Extensions.DataIngestion 的信息

Microsoft.Extensions.DataIngestion 是 Microsoft.Extensions 集合中的新增功能,此集合涉及数据库和 AI。 令人 兴奋。 参与其实现的 Adam Sitnik 为我们讲解其中的原委,并可能分享一些幕后细节。

Featuring:

Links:

2025

11 月 20 日:EF 10 发布庆祝活动 🎉

加入 EF 团队一起庆祝 EF 10 版本发布,提问并获取幕后有趣的故事。 😉

Featuring:

10月16日: 杰里米·米勒分享他对移民和马滕的看法

欢迎加入 .NET 数据社区团队,聆听 Marten 开发人员 Jeremy Miller 分享他对数据库迁移和 Marten 不断发展能力的见解。

Featuring:

Links:

9 月 18 日: Jiri 和 Nick 谈论 Dapper 和 EF Core 的经验

加入 Jiri 和 Nick,因为他们分享了在实际 .NET 项目中与 Dapper 和 Entity Framework Core 合作的实践经验。 它们将比较每种方法的优点和局限性。 期待实际见解、提示以及诚实地反思何时和为何选择一个而不是另一个。

Featuring:

Links:

8 月 21 日: 与卢卡斯·埃德一起学习 jOOQ

欢迎参加我们的另一场社区例会,本期我们邀请到了 jOOQ 的作者 Lukas Eder,他将向我们展示 jOOQ 的功能,以及 EF 可以从中获得哪些启发。

Featuring:

Links:

7 月 17 日:Couchbase 具有 EF Core 提供程序

Couchbase 最近发布了其 EF Core 驱动程序。 让我们和团队一起聊聊 Couchbase,它的提供程序,以及将 Couchbase 概念适配到 EF Core 体系所面临的挑战。

Featuring:

Links:

Jun 19: Microsoft.Extensions.VectorData - 访问 AI 应用中的矢量数据库

加入我们参加另一场 .NET 数据社区会议,Shay 将为我们介绍 Microsoft.Extensions.VectorData。

Featuring:

Links:

5 月 14 日: 使用 Davide Mauri 进行 Azure SQL 矢量搜索

欢迎 Microsoft 首席产品经理 Davide Mauri 探索 Azure SQL 中令人兴奋的新矢量搜索功能。 随着 AI 支持的应用程序和语义搜索的兴起,矢量数据库比以往更加相关。 在此会话中,Davide 将演示 Azure SQL 如何不断发展,以满足这些具有集成矢量搜索功能的现代需求。

Featuring:

Links:

4 月 24 日:Jiri 和 Shay 讨论 EF Core 测试,Maurycy 对他们进行纠正

Jiri 和 Shay 介绍了我们是如何测试整个 EF Core 的,Maurycy 随后纠正了他们的说法,因为他们的说法有错误。

Featuring:

Links:

3 月 19 日: 停止将实体框架用作 DTO 提供程序!

Chris Klug 对实体框架有一些意见,希望你了解它们...

Featuring:

Links:

3 月 6 日: 从 .NET 使用 Chroma 矢量数据库

与 Jiri 一起讨论 Chroma 矢量数据库和适用于 .NET 的新库,你可以使用该库与 Chroma 进行交互。

Featuring:

1 月 22 日:上下文池、FromSql 和已编译查询

让我们与 Chris Woodruff 一起参加另一个 .NET 数据社区摊位,其中他谈到上下文池、FromSql 和已编译的查询。

Featuring:

2024

11 月 20 日:EF Core 9:发布盛典

EF Core 9 刚刚发布。 欢迎参加本次专场会议,与行业专家畅谈 EF Core 的各种主题。

Featuring:

6 月 26 日:使用基于 .NET 的静态代码分析改进 SQL 架构和脚本

通过利用 .NET DacFX 框架和相关 .NET T-SQL 分析器的强大功能,你可以使用静态 T-SQL 分析提高数据库架构和脚本的质量。

@ErikEJ 最近使这项已有 15 年历史的技术重新流行起来,使其支持 .NET 6 及更高版本,并且已使许多第三方规则从沉睡中归来。

在这次 EF Core 社区站会中,我们将进行更深入的了解 - 从生成包含结果的简单 HTML 报告,到使用现代 .NET 管理和创建你自己的分析器规则。

Featuring:

Links:

5 月 15 日:在 .NET 中利用 Firebird 的强大功能

在此社区演讲中,我们将深入探讨 Firebird(一种开源 SQL 关系数据库管理系统)与 .NET(一个免费的跨平台开源开发人员平台)的集成。 此研讨会旨在介绍如何将这两种强大的技术相结合来创建可靠、可缩放且高效的应用程序。

此演讲专门针对有兴趣拓展数据库管理和 .NET 开发知识的各种水平的开发人员。 无论你是经验丰富的开发人员还是希望掌握更多技能的初学者,关于 Firebird 与 .NET 的有效结合使用,此演讲都会提供有价值的见解。

与我们一起参加这场有启发性的研讨会,了解如何在 .NET 中利用 Firebird 的强大功能将应用程序提升到一个新的水平。

Featuring:

Links:

4 月 17 日:关于 EF Core 属性映射的所有信息

在本集中,来自 EF 团队的 Arthur Vickers 和 Jiri Cincura 将讨论有关 EF Core 中映射属性的所有内容。 我们将介绍:

  • 属性和导航之间的差异。
  • EF 如何决定映射属性,以及是否映射到可以为空的列并定义了最大长度等。
  • 何时使用支持字段并直接映射字段。
  • 阴影属性。
  • 索引器属性。

如果有时间,我们将介绍值转换器如何影响所有这些功能!

Featuring:

Links:

3 月 20 日:使用 Hot Chocolate 14、Aspire 和实体框架构建分散式应用程序

构建和调试分散式系统需要开发人员在复杂性和简单性需求之间取得平衡。 理想情况下,我们的目标是单体简单,同时从微服务的可伸缩性和隔离中受益。 在今天的会议中,我们先来了解使用 Hot Chocolate 14 目前可实现的操作,以便与 Aspire 良好集成并弥补这一差距,从而为使用者提供一种将微服务的优势与单体的易用性相结合的方法。 此外,我们还将了解有关 Hot Chocolate 14 的许多新功能,以便更轻松地使用实体框架构建分层服务。 请不要担心! 我们将从最简单的数据库访问服务开始缓慢推进,直至最后。

Featuring:

Links:

3 月 6 日:EF Core 密钥和值生成

在本集中,Arthur 和 EF 团队的成员将探索生成的属性值,以及值生成与模型中的键的交互方式。 我们讨论全面客户端值生成,以及如何使用标识列、数据库序列或 hi-lo 模式进行服务器端生成。 此外,我们将通过确定实体是否进入 Added 状态来调查生成的键值如何影响 EF Core 更改跟踪。 最后,如果有时间,我们将讨论 TPC 映射的特殊注意事项,以及如何设置前后保存行为以及 sentinel 值等自定义项。

Featuring:

Links:

2 月 21 日:使用 Zomp EF Core 扩展的窗口和二进制函数

窗口函数是 SQL 最强大的功能之一。 现在,可以在 EF Core 中使用窗口函数而不是编写原始 SQL,你知道吗? Victor Irzak 将与 Shay 和 Arthur 一起探索在 EF Core 中使用窗口函数的真实用例。

Featuring:

Links:

2 月 7 日:数据库并发和 EF Core:超越乐观并发

在并发系列文章的第 3 期中,我们将深入探讨 SQL 隔离级别,以及它们在 SQL Server 和 PostgreSQL 中的工作方式(及工作方式的不同!)。 我们希望介绍数据库锁、快照和隔离级别是如何协同工作的,从而为并发世界带来一些理智。

Featuring:

Links:

1 月 24 日:数据库并发和 EF Core:ASP.NET 和 Blazor

在最后一集中,我们将深入探讨 EF Core 中乐观并发处理的基础。 在本集中,我们将继续学习之旅,介绍断开连接的情况。 也就是说,实体在数据库中更新之前先到达客户端,然后再返回服务器。 我们将了解在 ASP.NET Core 和 Blazor 应用中执行类似更新的不同模式,并了解并发令牌如何用于每个模式。 我们还将介绍如何将 ExecuteUpdate 与并发令牌一起使用,并查看 Azure Cosmos DB 中的 ETag 并发性。

Featuring:

Links:

1 月 10 日:数据库并发和 EF Core

当一个用户在读取记录而另一个用户在更新记录时会发生什么? 如果两个用户同时尝试更新同一条记录,该怎么办? 在 .NET 数据社区会议的这一集中,Shay 和 Arthur 将介绍不同的数据库隔离级别将如何影响并发和性能,然后将其扩展到 Entity Framework Core 支持的乐观并发模式。 这包括手动并发令牌和自动并发令牌,例如 SQL Server 的“rowversion”。 我们还将深入了解在断开连接的情况下会发生什么,以及何时使用并发令牌的原始值而不是当前值。 最后,我们将了解 EF Core 在使用 Azure Cosmos DB 等文档数据库时如何处理使用 ETag 的乐观并发。

Featuring:

Links:

2023

11 月 29 日:EF8 中的新增功能介绍

EF 团队的 Arthur 和 Shay 与社区成员将一起演示 Entity Framework Core 8 中目前提供的某些关键新功能。 例如:

  • 原始集合
  • 复杂类型
  • .NET 和 EF Core 中的 HierarchyId
  • 未映射类型的原始 SQL 查询
  • 延迟加载增强功能
  • 按 PK/AK/FK 查找受跟踪的实体
  • SQL Server 上支持的 DateOnly/TimeOnly
  • Sentinel 值和数据库默认值

Featuring:

Links:

10 月 18 日:介绍用于 EF Core 的 MongoDB 提供程序

在 .NET 数据社区会议的这一集中,我们将与 MongoDB 的工程师交谈,他们刚刚发布了正式 EF Core 提供程序的第一个预览版。 EF 团队在此提供程序上与 MongoDB 进行了密切合作,该提供程序现目前m与 Cosmos 提供程序都是 EF Core 的旗舰文档数据库提供程序。 我们将演示该提供程序,讨论它可以做什么和不能做什么,当然还会回答你的所有问题!

Featuring:

Links:

10 月 4 日:无关大小:EF8 中的小功能

除了基元集合和复杂类型等大功能外,EF8 还包含许多小功能和次要改进。 在此会话中,EF 团队的 Arthur 和 Shay 将介绍以下几个小功能,包括:

  • 用于控制数据库何时生成值的 Sentinels
  • LINQ 查询中 IN 和 EXISTS 的大量性能改进
  • SQL Server 上的 DateOnly/TimeOnly
  • 未映射类型的原始 SQL 查询
  • 更灵活的 ExecuteUpdate
  • SQL rowversion 数字属性
  • 通过消除括号使 SQL 更简洁

Featuring:

Links:

9 月 20 日:复杂类型作为 EF8 中的值对象

实体框架团队在暑假埋头研究 EF8 后,带着新的社区会议回来了。 在本次会议中,我们将了解 EF8 中的新“复杂类型”功能。 复杂类型在对象值之外没有键或任何标识,但仍可以通过属性解构,以映射到数据库中的不同列。 这允许引用类型或值类型用作 DDD 值对象,其保真度比使用从属类型时要高得多。 我们将展示使用复杂类型的示例,并讨论和回答有关实体类型、从属实体类型、复杂类型和基元类型之间的行为差异的问题。

Featuring:

Links:

6 月 14 日:在云和客户端之间同步数据(使用 SQLite)

在此会话中,我们将邀请 Eric Sink 讨论在客户端上保留数据库同步副本(使用 SQLite)的解决方案,而不是每次都从云端请求数据。 这适用于连接较差的移动方案,但“复制和同步”方法可以减少用户在网络上等待的时间。 本地写入速度很快,同步发生在后台。 我们将探讨如何有效地完成此操作、如何应对冲突解决,以及其他数据同步相关的问题。 Featuring:

Links:

5 月 31 日:EF Core Power Tools 的新 CLI 版本

在今天的会议中,Erik 将演示 EF Core Power Tools 的新 CLI 版本,并展示他在创建 CLI 工具时如何使用多个社区 NuGet 包来改善用户体验。

Featuring:

Links:

5 月 17 日:EF Core 中基元值的集合

在 .NET 数据社区会议的这一集中,.NET 数据访问团队将深入介绍刚刚在 EF Core 8 预览版 4 中发布的对基元值集合的新支持。 基元类型的集合现在可以用作实体类型的属性,并将映射到关系数据库中的 JSON 列。 此外,基元值的参数可以传递给数据库。 在任一情况下,数据库的本机 JSON 处理功能随后都会用于细化和操作基元值,就像它们位于表中一样。 这将带来强大的查询可能性,以及对常见问题的优化,例如转换使用 Contains 的查询。

Featuring:

Links:

4 月 19 日:EF Core 内部机制 - 模型生成

在本次会议中,.NET 数据访问团队将深入介绍用于生成模型的 EF Core 内部机制。 EF 模型是使用三种机制的组合构建的:约定、映射属性和模型生成器 API。 我们将介绍其中每个机制,并展示它们如何交互。 我们还将介绍如何缓存模型,以及可以控制缓存的方式。 而且,我们将一如既往地现场回答你的问题! Featuring:

Links:

3 月 22 日:通过 EF Core 将分层数据用于 SQL Server 和 PostgreSQL

加入 .NET 数据访问团队,了解如何使用 EF Core 将分层数据结构映射到关系数据库。 我们将查看 SQL Server/Azure SQL 上的“hierarchyid”和 PostgresSQL 上的“ltree”,并演示如何映射树结构,如家谱、文件系统或组织结构。 然后,EF Core 可用于针对层次结构编写 LINQ 查询,以各种方式查找祖先和后代,以及对子树执行操作以进行更新。 和往常一样,我们将在这里回答你的问题!

Featuring:

Links:

3 月 8 日:EF Core 内部机制:IQueryable、LINQ 和 EF Core 查询管道

在此实例中,我们将深入探讨 EF Core 如何处理 LINQ 查询、将其转换为 SQL 并在数据库上执行查询。 我们将介绍 IQueryable 和 LINQ 提供程序等关键概念,并了解 EF Core 如何使用缓存来实现极其快速的查询。 加入我们,了解魔法的工作原理!

Featuring:

Links:

2 月 22 日:MySQL 和 .NET:MySqlConnector 和 Pomelo EF Core 提供程序

本周,我们将邀请 Bradley Grainger 和 Laurents Meyer,他们是开源 MySQL ADO.NET 驱动程序和 Pomelo EF Core 提供程序的作者。 这两个组件协同工作,可在 .NET 中提供一流的 MySQL 数据访问体验。 让我们谈谈 MySQL 作为数据库的一些特点、在 .NET 中的开源数据项目上工作的体验以及能想到的其他内容!

Featuring:

Links:

2 月 8 日:将 SQLite 用于 .NET 和 EF Core

本周,Eric Sink(SQLitePCL.raw 的作者)和 Brice Lambson(Microsoft.Data.Sqlite 的作者)将加入 .NET 数据访问团队,讨论在 .NET 上使用 SQLite 的所有内容。 让我们首先深入探索使用 Eric 的包获取本机 SQLite 二进制文件的不同方法。 接下来,我们将通过 Brice 的 ADO.NET 提供程序了解在 .NET 中使用 SQLite 的基础知识。 最后,我们将了解如何通过 EF Core 提供程序充分利用 SQLite。 和往常一样,我们将在这里回答有关在 .NET 中使用 SQLite 的任何问题。

Featuring:

Links:

1 月 11 日:Entity Framework Core 常见问题解答

加入 Microsoft .NET 数据团队,获取有关 EF Core 的许多常见问题的解答。 例如:

  • EF Core 与 EF6 有何区别?
  • 需要安装哪些 NuGet 包才能使用 EF Core?
  • 我是否应始终使用非跟踪查询?
  • 为什么 EF Core 有时会忽略 Includes?
  • 对值对象使用从属类型有什么问题?
  • 是否应该通过 EF Core 创建存储库?
  • 为什么内存中数据库在测试中不起作用?
  • 如何在 EF Core 中调用存储过程?
  • 如何查看 LINQ 查询的 SQL?

Featuring:

Links:

2022

文档 14:针对 Entity Framework Core 8 的计划

该计划已针对 .NET 8 中的 EF Core 8 和其他数据访问工作发布。 这包括五个主要主题的工作:

  • 被强烈要求的功能
  • 云原生和设备
  • Performance
  • 可视化工具
  • 开发人员体验

加入 .NET 数据团队,讨论支持和不支持的功能,并获得问题的答案。

Featuring:

Links:

11 月 16 日:EF7 的旋风之旅

加入 .NET 数据团队,随我们快速浏览 EF Core 7.0 (EF7) 的新功能。 这些新功能包括 JSON 列、批量更新、TPC 映射等!

Featuring:

Links:

11 月 7 日:EF7 自定义模型约定

EF Core 使用元数据“模型”来描述如何将应用程序的实体类型映射到基础数据库。 此模型是使用大约 60 个“约定”集构建的。 然后可以使用映射属性(也称为“数据注释”)和/或对 OnModelCreating 中 DbModelBuilder API 的调用来自定义按约定构建的模型。 EF7 允许应用程序删除或修改现有约定,以及创建新的约定。 加入我们的此次 .NET 数据社区会议,了解如何利用 EF Core 7.0 应用程序中的自定义模型构建约定。

Featuring:

Links:

10 月 19 日:新的 EF Core 7.0 API(批量更新)

EF Core 7.0 引入了 ExecuteUpdate 和 ExecuteDelete API,使你可以轻松地使用 LINQ 来表达数据库更新或删除操作。 这些 API 可以更高效地根据条件将更改应用到多行,例如“删除 InActive 设置为 true 的行”(也称为批量更新方案)。 但在某些情况下,它们还允许你以更简洁、更简单的方式在一行中表达更改,从而简化代码。 ExecuteUpdate 和 ExecuteDelete 完全绕过了 EF 的更改跟踪并会立即执行,而不是在调用 SaveChanges 时执行。 不要错过本集内容,了解更多信息并探索这些新 API 带来的新可能性!

Featuring:

Links:

10 月 5 日:JSON 列

JSON 列允许关系数据库直接存储文档,同时保留数据的整体关系结构。 EF7 包含对 JSON 列的提供程序不可知的支持,以及 SQL Server 的实现。 可以使用 LINQ 查询这些列中的 JSON,从而允许按文档元素进行筛选和排序,以及将文档外部的元素投影到结果中。 此外,EF7 还支持对文档进行元素级更改跟踪,并在调用 SaveChanges 时仅对已更改的元素进行部分更新。

Featuring:

Links:

9 月 21 日:Azure 移动应用和脱机同步

了解 Azure 移动应用如何提供在 Entity Framework Core 支持的 Web API 与移动或桌面应用之间轻松同步数据所需的工具和库。

Featuring:

Links:

8 月 24 日:EF Core 7 中的新聚合函数支持

聚合函数(如 COUNT、MAX 或 AVG)从多个行计算单个值。 EF7 添加了对自定义提供程序聚合函数的支持,增加了对许多新转换的支持。 在 .NET 数据社区会议的这一集中,我们将探索不同 EF 提供程序之间的这些新转换,并了解它们对于更高效地从数据库加载数据意味着什么。 我们还将介绍一些棘手的设计问题,并揭秘团队在开发此功能时讨论的查询转换细节。

Featuring:

Links:

8 月 10 日:CoreWCF:路线图和问答

CoreWCF 是 Windows Communication Foundation(WCF)到 .NET 的服务端的端口。 此项目的目标是使现有 WCF 服务能够迁移到 .NET。 CoreWCF 团队最近进行了一项调查,他们将讨论一些答案、解答相关问题,并分享有关未来路线图的见解。

Featuring:

Links:

7 月 27 日:DbDataSource:System.Data 中引入的新抽象

在 .NET 数据社区会议的这一集中,我们将探讨 DbDataSource,它是 .NET 7.0 中 System.Data 引入的新抽象。 DbDataSource 具有很多优势,包括可以更轻松地将 ADO.NET 驱动程序与依赖项注入集成,更好地管理高级驱动程序配置,帮助提升性能等等。 不要走开,了解 .NET 数据堆栈较低级别的改进。

Featuring:

Links:

7 月 13 日:拦截此 EF7 预览版 6 事件

EF7 包括各种新的拦截器和事件,以及对现有生命周期挂钩的许多改进。 在本次会议中,来自 .NET 数据团队的 Arthur 和其他人员将深入探讨这一新功能,包括截获实体具体化、查询表达式树、跟踪期间的标识解析,以及乐观并发冲突的示例。 加入我们,通过大量代码拦截来修改 EF 行为,这将是一段充满乐趣的旅程!

Featuring:

Links:

7 月 29 日:DbContext 配置和生存期 - EF Core 体系结构第 2 部分

来自 EF 团队的 Arthur 和其他人将继续深入探讨 Entity Framework Core 的体系结构。 这是一个代码驱动的讨论,旨在探讨如何以及为何以这种方式设计和实现事物。 在此会话中,我们将了解 DbContext 实例的初始化和配置,包括选择提供程序、创建 DbSet 实例、读取 DbContextOptions 和 DbContext 池化。

Featuring:

Links:

7 月 15 日:使用 EF Core 时的 TPH、TPT 和 TPC 继承映射

面向对象的编程中使用的类型继承层次结构不会自然映射到关系数据库架构。 在本集直播中,我们将了解将 EF Core 与关系数据库配合使用时继承映射的不同策略。 包括每个层次结构一张表 (TPH) 映射、每个类型一张表 (TPT) 映射以及每个具体类型一张表 (TPC) 映射,这是 EF Core 7.0 预览版 5 中的新增功能。 我们将查看生成的 SQL 中的映射结果,并考虑性能和存储影响。 这将为何时应使用每种策略提供一些指导。

Featuring:

Links:

6 月 1 日:EF Core 体系结构:内部依赖项注入

与 Arthur Vickers 和 EF 团队中的其他人一起,开始深入了解 Entity Framework Core 的体系结构。 这不是一个正式的谈话,而是由代码驱动的自由讨论,我们将探讨如何以及为何以这种方式设计和实现事物。 本周,我们将首先介绍依赖项注入 (D.I.) 的使用和“内部服务提供商”。 这是 EF Core 作为面向服务的体系结构的支柱,其中核心代码、数据库提供程序和插件都实现了相关服务,以协同工作提供 EF 功能。

Featuring:

Links:

5 月 18 日:测试 EF Core 应用(第 2 部分)

在测试 EF Core 应用的第二部分,来宾 Jon P Smith 将重点介绍使用 EF Core 测试应用程序所需的实际代码和方法,并解决一些关键“难题”。

Featuring:

Links:

5 月 4 日:数据库分页

手头有大量数据? 需要花时间分页。 但什么是最好的方法? TAKE、SKIP 还是 OFFSET? 键集分页如何? 如有分页需求,请加入 .NET 数据团队,聆听“EF Core 的键集分页”的作者 Mohammed Rahhal 谈论分页并实时回答你的问题。

Featuring:

Links:

4 月 20 日:EF7 更新管道的性能改进

加入实体框架团队,聆听更新管道中用于提高性能的优化。 准备好你的 EF7 问题,我们计划花一些时间在问答环节现场回答你的问题。

Featuring:

Links:

4 月 6 日:EF7 中 T4 模板的数据库优先:早期展望

首选 null 资源库? 属性初始化器? 构造函数初始化? 使用 Mermaid 以 Markdown 形式呈现的自动生成数据库关系图如何? 通过刚刚发布的 EF7 功能的早期介绍,了解如何控制数据库基架

Featuring:

Links:

3 月 9 日:GraphQL 和 OData:深入讨论

GraphQL 库 HotChocolate 的作者 Michael Staib 以及 Microsoft 工程师和 OData 专家 Hassan Habib 将讨论 GraphQL 和 OData 的各种功能,以及它们如何让开发人员超越 REST。

Featuring:

Links:

2 月 23 日:庆祝 .NET:实体框架诞生 20 年

在 .NET 庆祝其 20 岁生日之际,实体框架也即将迎来其开放源代码 10 周年。 实体框架团队将邀请帮助其交付早期版本的工程师和项目经理,让他们分享各自的故事、演示和趣闻来庆祝这些里程碑。 与 Tim Laverty、Rowan Miller、Danny Simmons、Diego Vega 一起参加此 .NET 数据社区会议的特别版。

Featuring:

Links:

2 月 9 日:软件版本和“内容”

与 .NET 数据团队和 Jon Skeet 一起讨论软件版本控制、.NET 中的版本控制问题,以及其他 stuff. 谁知道会出现什么主题? 加入我们的直播,提出问题并实时得到解答。

Featuring:

Links:

1 月 26 日:测试 EF Core 应用

在使用 Entity Framework Core 的应用程序上运行自动测试的最佳方式是什么? Jon P Smith 是“Entity Framework Core in Action”一书的作者,他介绍了为代码创建自动测试的三种方法,并探讨了 EF Core 测试的“痛点”以及如何应对这些痛点。

Featuring:

Links:

1 月 12 日:EF7 计划

EF7 计划已发布。 在本集中,EF Core/.NET 数据团队将回顾计划的详细信息,并回答有关路线图的实时问题。

Featuring:

Links:

2021

12 月 1 日:Hot Chocolate 12 和 GraphQL 2021

Hot Chocolate 12 通过更深入地集成到 EF core 中,提供更多架构构建选项。 Hot Chocolate 已经实现了 2021 年 10 月的 GraphQL 新规范,我们将探索新功能。 我们现在支持完整的流和延迟规范,并将探索这些新的数据提取功能。

Featuring:

Links:

11 月 17 日:创建历史记录并探索 Cosmos(EF Core 6 回顾)

EF Core 6 已发布,其中提供了大量功能,包括性能改进、临时表支持、CI/CD 友好迁移捆绑包、已编译的模型、查询改进、增强的 Azure Cosmos DB 功能。 加入 EF Core 团队和我们的社区专家小组,我们将介绍新增内容、分享 EF Core 6 的故事并实时回答你的问题。

Featuring:

Links:

11 月 3 日:Noda Time

Noda Time 是适用于 .NET 的替代日期和时间 API。 它可帮助你更清晰地思考数据,并更准确地表达对这些数据的操作。

Featuring:

Links:

10 月 6 日:SQL Server 临时表和 EF Core 6

了解 EF Core 6 中对临时表的新支持,包括从迁移创建表、将现有表转换为临时表、查询历史数据和时间点还原。

Featuring:

Links:

10 月 20 日:来自 ASP.NET 文档团队的 EF Core 和 ASP.NET Core

回到基础知识:来自文档团队的 EF Core 和 ASP.NET Core。

Featuring:

Links:

9 月 22 日:PostgreSQL 和 EF Core

PostgreSQL 具有其他关系数据库中不常见的一些高级功能。 在此会话中,我们将介绍其中一些功能,并了解 EF Core 如何使这些内容易于访问。

Featuring:

Links:

8 月 25 日:Dapper

Dapper 的维护者和关键参与者 Nick 和 Marc 将向人们展示 Dapper 的强大功能和它能执行的一切操作,以便用户可以充分了解情况并选择更好的东西,例如 EF Core(原话)。

Featuring:

Links:

8 月 11 日:EF Core 的全局查询筛选器

为什么客户想要“软删除”? 在 EF Core 应用中处理多租户的最佳做法是什么? 程序员 Jon P. Smith 分享了如何在 EF Core 平台(全局查询筛选器)中使用功能强大的工具来处理“软删除”等方案。

Featuring:

Links:

7 月 28 日:OData

OData 是为 ASP.NET Core API 提供支持的最佳协议之一,具有各种功能,例如动态数据整理、筛选、批处理和排序。它通过在服务器上执行查询显着提高了客户端性能。 Hassan 将在社区会议上讲解关于 OData 的全部内容。

Featuring:

Links:

7 月 14 日:可视化数据库查询计划

了解什么是查询计划、如何在 LINQPad 中查看 EF Core 查询计划、查找缺少的索引以及提高查询的性能。

Featuring:

Links:

6 月 16 日:Azure Cosmos DB 和 EF Core

EF Core 可以是对象关系映射器,但它也可以放弃关系并直接连接到 Azure Cosmos DB NoSQL 引擎。 在此会议中,团队将讨论 Cosmos DB 提供程序背后的原理,展示代码示例,讨论 SQL 和 NoSQL 数据之间的主要差异,并共享 Azure Cosmos DB 提供程序未来增强的路线图。

Featuring:

Links:

6 月 2 日:EF Core 编译模型简介

EF Core 为实体类型及其数据库映射创建内部模型。 此模型通常在应用程序启动时生成一次。 从 EF Core 6.0 开始,现在可以在编译时生成此模型。 这可以将大模型的启动时间减少多达 67%。 加入本次社区会议,团队将介绍已编译的模型并演示其使用方法。

Featuring:

Links:

5 月 19 日:使用 GraphQL 构建新式应用

GraphQL 是一种公开数据的好方法,无论是以更丰富的方式公开业务层,还是仅映射数据模型以快速入门。 GraphQL 为后端工程师提供了在不影响其他性能的情况下塑造服务层的工具,并允许前端工程师决定构建卓越应用程序所需的数据。 了解 GraphQL 是什么、为什么要使用它,并了解如何使用它构建应用。

Featuring:

Links:

5 月 5 日:EF Core 的触发器

来宾 Koen Bekkenutte 将介绍 EFCore.Triggered 项目,并讨论其优势以及它与域事件和数据库触发器有何不同。 了解它是如何实现的,以及项目如何使用 EF Core 的 ChangeTracker 和 SaveChanges 拦截。 和往常一样,EF Core 团队和 Koen 将参与现场问答环节。

Featuring:

Links:

4 月 21 日:开源贡献:如何将功能添加到 EF Core

想要为 EF Core 做贡献但又不确定从何处开始? 我们将随时为你提供帮助! 在 EF Core 社区会议的这一集中,我们将实时添加 EF Core 功能。 我们将介绍从创建存储库分支、添加代码和相关测试到生成拉取请求的所有内容。 了解如何组织代码库、如何构建以及如何运行测试,并直接从带给你神奇独角兽的团队实时接收问题的答案!

Featuring:

Links:

4 月 7 日:适用于云原生应用程序和开发人员的 Azure SQL

加入 Davide Mauri 和 EF Core 团队,就 Azure SQL 如何帮助云开发人员创建云原生解决方案进行交互式讨论。 从简单的 REST API 到可缩放的后端,Azure SQL 提供了所需的灵活性、可伸缩性和功能来简化开发人员的工作。 Davide 将介绍从 JSON 支持和 CI/CD 到列存储、地理空间和图形模型的各种主题。

Featuring:

Links:

3 月 24 日:EF Core Power Tools:新批次

了解如何利用最近添加到 EF Core Power Tools 的新高级功能:反向工程 .dacpac 文件、重命名表、列甚至导航、排除列、在同一项目中处理多个 DbContext、映射空间列和 SQL Server 存储的过程。 会议还将包括 EF Core Power Tools 反向工程的幕后介绍。

Featuring:

Links:

3 月 10 日:Julie Lerman 与 EF Core:随心所问 (AMA)

Julie Lerman 是实体框架的独立权威和社区名人。 她从事编程工作近 30 年,自 1989 年以来一直担任独立顾问。 Julie 是全球 150 名 Microsoft 区域主管之一,自 2003 年以来每年都会荣获 Microsoft MVP 奖。 与 Julie 和 EF Core 团队一起参加“随心所问”会议:你的问题将得到实时回答!

Featuring:

Links:

2 月 24 日:EF Core 应用的性能优化

来宾 Jon P Smith 将展示他如何使用 EF Core 创建演示电子商务图书销售的网站。 他从 700 本书开始,然后扩展到 10 万本和 50 万本。 在每个阶段,他都会比较每次改进的性能,以及获得该性能需要额外执行的操作。

Featuring:

Links:

2 月 10 日:Entity Framework Core 的类型化异常

当使用 Entity Framework Core 进行数据访问时,所有数据库异常都会包装在 DbUpdateException 中。 如果需要知晓异常是由唯一约束、值过长还是由所需列缺少值引起的,则需要深入了解具体的 DbException 子类实例,并查看错误编号来确定确切原因。 在本集中,了解 EntityFramework.Exceptions 如何处理所有特定于数据库的详细信息,以及如何允许你在查询违反数据库约束时使用 Entity Framework Core 的类型化异常。

Featuring:

Links:

1 月 27 日:MSBuild.Sdk.SqlProj 简介

MSBuild.Sdk.SqlProj 是一个新的开放源代码项目,它允许你使用新的跨平台 SDK 样式项目生成 SQL Server 数据库项目 (.sqlproj),而无需安装 Visual Studio。 Jonathan 将展示为什么要使用该项目、如何上手,并引导你了解它的各种功能。 他还将展示如何参与项目的开发。

Featuring:

Links:

1 月 13 日:EF Core 6.0 调查结果

我们问了,你听了! 近 4,000 名开发人员参与了 EF Core 2020 调查。 在本集的社区会议中,高级项目经理 Jeremy Likness 将回顾调查结果,并讨论这些结果如何影响 EF Core 6.0 计划。 团队将实时回答你的问题。

Featuring:

Links:

2020

12 月 2 日:LLBLGen 设计器和 .NET 数据历史记录

在本集中,我们迎来了 Frans Bouma,他将演示如何使用 LLBLGen Pro 设计器以图形方式为任何 .NET ORM 建模域。 Frans 也是一名德高望重的 .NET 数据和 SqlServer 专家,因此我们将详细介绍在 Microsoft 世界中创建商业 ORM 的历史概况和具体细节。

Featuring:

Links:

11 月 18 日:EF Core 5.0 特别版社区专家组

在此特别版 EF Core 社区会议中,我们将与社区专家组一起庆祝 EF Core 5.0 的发布。 我们将迎来实体框架领域的杰出人物 Diego Vega、Erik E Jensen、Jon P Smith 和 Julie Lerman,他们将讨论其最喜欢的实体框架功能并实时回答你的问题。

Featuring:

Links:

10 月 28 日:EF Core 5.0 排序规则

在本集社区会议中,我们将展示 5.0 中有关区分大小写和排序规则的新功能。 我们还将一瞥这些功能的设计方法,以及 EF 团队在设计时遵守的注意事项和约束,包括性能、跨数据库支持、可用性等。 来看看我们如何设计 EF 功能!

Featuring:

Links:

10 月 14 日:Cosmos DB:存储库模式 .NET 包装器 SDK

在本集中,.NET TV 主持人 David Pine 将与 Jeremy Likness 一起讨论 Cosmos DB 存储库模式 .NET SDK。 SDK 旨在通过抽象化某些复杂性、公开精巧的 API 外围应用以及通过 IRepository 接口提供 C.R.U.D. 操作来简化 Cosmos DB .NET SDK。

与往常一样,EF Core 团队将实时回答问题。

Featuring:

Links:

9 月 30 日:地理数据与 NetTopologySuite

Joe Amenta 将与我们一起讨论如何将空间数据添加到应用程序,开启数据间新关系的世界。 他将演示从 .NET 查询空间数据的“现状”,并演示与 NetTopologSuite 和 EF Core 的集成。

Featuring:

Links:

9 月 16 日:EF Core 5.0 中迁移的新增功能

Entity Framework Core 团队专注于 EF Core 5.0 版本的重大迁移改进。 本次会议将有大量演示,供你了解新功能并探索不同的迁移方案。 和往常一样,团队将实时回答你的问题!

Featuring:

Links:

步骤 2:使用 DotMim.Sync 同步数据库

开源软件解决方案 DotMim.Sync 的维护者将加入 EF Core 团队,一起讨论该项目如何帮助保持本地关系数据库的同步。

Featuring:

Links:

8 月 19 日:EF Core 5.0 中的多对多

加入团队,了解为 EF Core 5.0 实现的最新多对多映射功能,包括跳过导航等!

Featuring:

Links:

8 月 5 日:EF Core 深入介绍视频系列

与 .NET 团队的成员一起参加我们的社区交流会,了解框架、.NET、语言、CLI、MSBuild 等领域的出色社区贡献。

Featuring:

Links:

7 月 22 日:将基架与 Handlebars 配合使用

与 .NET 团队的成员一起参加我们的社区交流会,了解框架、.NET、语言、CLI、MSBuild 等领域的出色社区贡献。

Featuring:

Links:

6 月 24 日:Blazor 中的 EF Core

与 .NET 团队的成员一起参加我们的社区交流会,了解框架、.NET、语言、CLI、MSBuild 等领域的出色社区贡献。

Featuring:

Links:

6 月 10 日:EF Core Power Tools

与 .NET 团队的成员一起参加我们的社区交流会,了解框架、.NET、语言、CLI、MSBuild 等领域的出色社区贡献。

Featuring:

Links:

5 月 6 日:EF Core 社区会议简介

与 .NET 团队的成员一起参加我们的社区交流会,了解框架、.NET、语言、CLI、MSBuild 等领域的出色社区贡献。

Featuring:

Links: