mirror of
https://github.com/dotnetcore/FreeSql.git
synced 2026-02-06 16:30:52 +08:00
update
1
更新日志.md
1
更新日志.md
@@ -10,6 +10,7 @@
|
||||
- 修复 ISelect.ToDataTable(lambda) 未使用 AsProperty 返回数据;
|
||||
- 修复 IUpdate.Set(a => a.xx = null) 表达式解析 bug;#311
|
||||
- 修复 Enum 类型无元素时的错误;
|
||||
- 增加 IFreeSql.InsertOrUpdate 方法 [wiki](https://github.com/dotnetcore/FreeSql/wiki/%E6%B7%BB%E5%8A%A0%E6%88%96%E4%BF%AE%E6%94%B9);
|
||||
- 增加 ISelect.WhereDynamicFilter 方法实现动态过滤条件(与前端交互)[wiki](https://github.com/dotnetcore/FreeSql/wiki/%E6%9F%A5%E8%AF%A2);
|
||||
- 增加 WhereCascade/GlobalFilter 表达式子查询的支持;
|
||||
- 增加 \[Description\] 元数据注释,优先级低于 c# 代码注释;
|
||||
|
||||
21
添加或修改.md
21
添加或修改.md
@@ -1,5 +1,26 @@
|
||||
FreeSql 提供了多种插入或更新方法,v0.11.11 之前主要使用 FreeSql.Repository/FreeSql.DbContext 库提供的方法实现。
|
||||
|
||||
## IFreeSql.InsertOrUpdate
|
||||
|
||||
IFreeSql 定义了 InsertOrUpdate 方法实现添加或修改的功能,利用数据库特性:
|
||||
|
||||
| Database | Features |
|
||||
| -- | -- |
|
||||
| MySql | on duplicate key update |
|
||||
| PostgreSQL | on conflict do update |
|
||||
| SqlServer | merge into |
|
||||
| Oracle | merge into |
|
||||
| Sqlite | replace into |
|
||||
| Dameng | merge into |
|
||||
|
||||
注意:FreeSql.Repository 通用仓储也有 InsertOrUpdate 方法,它们的机制不一样。
|
||||
|
||||
```csharp
|
||||
fsql.InsertOrUpdate<T>()
|
||||
.SetSource(items) //需要操作的数据
|
||||
.ExecuteAffrows();
|
||||
```
|
||||
|
||||
## FreeSql.Repository 之 InsertOrUpdate
|
||||
|
||||
此方法与 FreeSql.DbContext AddOrUpdate 方法功能一样。
|
||||
|
||||
Reference in New Issue
Block a user