FreeSql v3.5.106 版本发布:增强批量操作与数据库兼容性
FreeSql 是一个功能强大的 .NET ORM 框架,支持多种数据库操作,提供了简单易用的 API 接口,帮助开发者高效地进行数据库访问和操作。作为一款开源的对象关系映射工具,FreeSql 在性能优化和跨数据库支持方面表现出色,特别适合需要同时支持多种数据库的企业级应用开发。
新增功能亮点
SQLite 批量插入功能增强
本次版本新增了 ExecuteSqliteBulkInsert 方法,专门针对 SQLite 数据库的批量插入操作进行了优化。在数据处理场景中,批量插入是提升性能的重要手段,特别是当需要一次性插入大量数据时。
传统的单条插入方式在大量数据场景下会面临性能瓶颈,而新的批量插入方法通过优化底层实现,显著减少了与数据库的交互次数,从而大幅提升了数据写入效率。这对于日志记录、数据迁移等需要处理大批量数据的场景尤为重要。
问题修复与改进
Oracle 数据库 NCLOB 类型处理优化
修复了 Oracle CodeFirst 模式下 NCLOB 类型的转换问题。NCLOB 是 Oracle 中用于存储大量 Unicode 字符数据的数据类型,在之前的版本中可能存在类型转换异常。此次修复确保了在 CodeFirst 模式下,NCLOB 类型能够被正确识别和处理,保障了数据存储的完整性和准确性。
JSON 映射反序列化支持增强
改进了 JsonMap 的反序列化功能,现在完全支持 JsonSerializerSettings 配置。这意味着开发者可以更灵活地控制 JSON 数据的反序列化过程,包括日期格式处理、空值处理等自定义设置,为复杂的数据交换场景提供了更好的支持。
Kingbase 数据库版本识别优化
修复了 Kingbase V8R3 版本号的识别问题。Kingbase 作为国产数据库,在企业应用中越来越常见。此次修复确保了 FreeSql 能够准确识别 Kingbase 的不同版本,从而应用适当的数据库特性支持和优化策略。
TDengine 时间类型处理完善
解决了 TDengine 数据库中 DateTime 类型默认值读取异常的问题。TDengine 是一款专为物联网和大数据场景设计的高性能时序数据库,对时间类型的处理尤为重要。此次修复确保了 DateTime 类型默认值能够被正确读取,避免了因类型处理不当导致的数据异常。
技术价值与应用建议
本次 FreeSql 的更新主要围绕数据库操作的稳定性和性能优化展开,特别是针对不同数据库的特有功能进行了适配和完善。对于开发者而言,这些改进意味着:
- 在大数据处理场景下,可以更高效地使用 SQLite 进行批量数据插入
- 使用 Oracle 数据库时,NCLOB 类型的处理更加可靠
- 与 Kingbase 和 TDengine 等国产数据库的兼容性更好
- JSON 数据处理更加灵活可控
建议开发者在以下场景考虑升级到最新版本:
- 需要处理大量数据插入的应用
- 使用多种数据库混合部署的系统
- 对 JSON 数据处理有特殊要求的项目
- 采用国产数据库作为存储后端的应用
FreeSql 持续关注开发者实际需求,通过不断优化和增强功能,为 .NET 生态提供更强大、更稳定的数据库访问解决方案。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust098- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
MiMo-V2.5-ProMiMo-V2.5-Pro作为旗舰模型,擅⻓处理复杂Agent任务,单次任务可完成近千次⼯具调⽤与⼗余轮上 下⽂压缩。Python00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
Kimi-K2.6Kimi K2.6 是一款开源的原生多模态智能体模型,在长程编码、编码驱动设计、主动自主执行以及群体任务编排等实用能力方面实现了显著提升。Python00
MiniMax-M2.7MiniMax-M2.7 是我们首个深度参与自身进化过程的模型。M2.7 具备构建复杂智能体应用框架的能力,能够借助智能体团队、复杂技能以及动态工具搜索,完成高度精细的生产力任务。Python00