AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

Entity Framework 7 支持批量操作和 JSON 列

作者:Edin Kapić

  • 2023-01-12
    北京
  • 本文字数:970 字

    阅读完需:约 3 分钟

Entity Framework 7支持批量操作和JSON列

微软于2022年11月连同.NET 7 发布了用于.NET Framework 的对象到数据库映射器库 Entity Framework(EF)Core 7。新版本提升了保存数据的性能,支持 JSON 列操作,支持高效的批量操作,并包含许多小的修复和改进。EF7 Core 可用于.NET 7 和.NET 6。

 

微软于 2022 年 11 月 8 日通过NuGet包的形式发布了 EF7。根据重大变更文档所述,EF Core 7 中最重要的变化是默认将 SQL Server 连接视为加密连接。开发者要么必须在他们的机器上配置有效的证书,要么显式放松安全限制,否则的话在 EF6 中有效的连接字符串在 EF7 中将会抛出异常。

 

众所周知,EF7 Core 的一个改进是在使用 SaveAsync 方法保存数据时的性能提升。在某些情况下,与同一机器上的 EF6 Core 相比,性能提升超过50%

 

EF7 Core 支持将数据库中包含JSON文档的文本列作为查询对象。作为数据库查询的一部分,开发者可以对文档中的 JSON 属性进行过滤和排序。EF7 提供了对 JSON 列的通用支持和针对 SQL Server 的具体实现。

 

针对数据库的批量操作,例如批量更新或删除,EF7 对其进行了重写。标准的 SaveChangesAsync 方法会影响多条记录,SQL 执行结果会被载入内存。EF7 现在有两个新方法,ExecuteUpdateAsync和ExecuteDeleteAsync,它们会立即在服务器端执行批量操作,不会将任何实体加载回内存。

 

默认情况下,EF Core 将.NET 类型的继承层次结构映射到单张数据库表,这种映射策略叫作每层次表(Table-per-Hierarchy,TPH)。EF Core 5 加入了每类型表(Table-per-Type,TPT)策略,层次结构中的每一个类型都被映射到一张数据库表。EF Core 7加入了每具体类型表(Table-per-Concrete-Type,TPC)策略,每个非抽象类型映射到一张数据库表,而抽象类型列被添加到抽象类型的具体实现的表中。

 

EF7 还带来了其他改进,比如在数据库优先的反向工程中支持自定义T4模板,支持覆盖和更改默认模型约定改进的拦截器和事件插入、更新和删除到存储过程的映射

 

在过去,.NET 开发人员认为 Entity Framework 笨重且缺点多多,但现在的新版本被认为是一种高效且具有容错能力的ORM框架

 

随着 EF7 的发布,EF8的路线图中增加了更多的 JSON 列增强,支持.NET 值对象,并能够将未映射的类型作为查询结果返回。

 

原文链接

https://www.infoq.com/news/2022/12/ef7-core-json/


相关链接:

InfoQ 2022 年趋势报告:.NET篇

微软将于年底终止对 .NET Core 3.1 的支持

.NET分布式缓存中的发布和订阅模式

2023-01-12 08:0011224

评论

发布
暂无评论
发现更多内容

如何在iOS手机上查看应用日志

Geek_66e2f3

TDengine 被 Frost & Sullivan 评为全球最佳工业数据管理解决方案

TDengine

tdengine 时序数据库

2023 IoTDB Summit:天谋科技高级开发工程师田原《尽其用:如何用 IoTDB 发掘数据的无限潜能》

Apache IoTDB

软件测试/测试开发/全日制|Pytest测试用例调度与运行

霍格沃兹测试开发学社

基于Hologres+Flink的曹操出行实时数仓建设

阿里云大数据AI技术

位列云数据库领导者象限!天翼云以科技赋能千行百业数字化转型!

编程猫

如何降低API接口的使用成本和提高效率?

技术冰糖葫芦

软件测试开发/全日制/测试管理丨App测试项目流程

测试人

软件测试

@PolarDB,你的动手体验搭子,来啦

阿里云瑶池数据库

数据库 阿里云 云原生

软件测试/测试开发/全日制/测试管理丨MySQL介绍

测试人

软件测试

「狂飙」Zilliz 2023 年度总结

Zilliz

Milvus Zilliz 向量数据库 zillizcloud

聚道云软件连接器助力某餐饮管理有限公司实现人力资源信息自动化

聚道云软件连接器

案例分享

聚道云软件连接器助力某贸易公司实现付款流程自动化

聚道云软件连接器

案例分享

加密钱包监控:守护企业资产与信誉的利器

Footprint Analytics

区块链 加密钱包

融云 CEO 董晗荣获 51CTO 「2023 年度科技影响力人物奖」

融云 RongCloud

IT 社交 科技 融云 wicc

融云 CEO 董晗荣获 51CTO 「2023 年度科技影响力人物奖」

融云 RongCloud

IT 企业 科技 融云 人物

联合阿里云,首批诚邀 30 家!Alibaba Cloud Linux 伙伴招募计划发布

OpenAnolis小助手

Linux 阿里云 开源 操作系统 龙蜥社区

面向设计师的11个必备AI工具

互联网工科生

人工智能 AI

从规则到神经网络:机器翻译技术的演化之路

不在线第一只蜗牛

神经网络 架构 机器翻译

2023 年度合辑 | 出海大年的全球化产品洞察和服务动向

融云 RongCloud

产品 全球化 IT 服务 融云

CPU 高负载故障演练

腾讯云混沌演练平台

混沌工程 cpu飙满

Entity Framework 7支持批量操作和JSON列_编程语言_InfoQ精选文章