update

28810
2020-01-04 17:28:12 +08:00
parent a7ec17666b
commit 4d7469bac5
5 changed files with 14 additions and 14 deletions

@@ -1,4 +1,4 @@
FreeSql.Repository 作为扩展,实了通用仓储层功能。与其他规范标准一样仓储层也有相应的规范定义。FreeSql.Repository 参考 abp vnext 接口定义和实现基础的仓储层CURD应该算比较通用的方法吧。
FreeSql.Repository 作为扩展,实了通用仓储层功能。与其他规范标准一样仓储层也有相应的规范定义。FreeSql.Repository 参考 abp vnext 接口定义和实现基础的仓储层CURD应该算比较通用的方法吧。
## 安装
@@ -30,7 +30,7 @@ var curd2 = fsql.GetGuidRepository<Song>();
> 注意BaseRepository 对象多线程不安全
2、继承实;
2、继承实
```csharp
public class SongRepository : BaseRepository<Song, int> {

@@ -238,7 +238,7 @@ fsql.CodeFirst.SyncStructure(typeof(Log), "Log_2"); //迁移到 Log_2 表
## v0.10.13
- 修复 postgresql 12 移除 pg_attrdef.adsrc 列,导致 CodeFirst 方法失败的 bug
- 增加 Aop.ConfigEntity 属性 ModifyIndexResult 实 IndexAttribute 的设置;
- 增加 Aop.ConfigEntity 属性 ModifyIndexResult 实 IndexAttribute 的设置;
## v0.10.12
@@ -689,7 +689,7 @@ class Topic {
- 优化内部 QuoteSqlName 方法;当参数值是 (xxx)则直接返回原形。如xxx => [xxx](max(1)) => (max(1))
> 可实现功能orm.Select\<xxx\>().AsTable((a,b) => "select * from xxx").Page(1, 20).ToSql()
- 增加 Oracle IDbFirst 接口实现;
- 补充 开放 IUpdate UpdateColumns 方法功能,实更新实体时,只更新指定的列(与 IgnoreColumns 对应);
- 补充 开放 IUpdate UpdateColumns 方法功能,实更新实体时,只更新指定的列(与 IgnoreColumns 对应);
## v0.4.13
@@ -746,7 +746,7 @@ class Topic {
## v0.3.25
- 修复 全局过滤器一个赋值低级错误;
- 增加 IFreeSql\<TMark\> 空接口,实多个 IFreeSql 注入使用,使用泛型标识区分;
- 增加 IFreeSql\<TMark\> 空接口,实多个 IFreeSql 注入使用,使用泛型标识区分;
## v0.3.24
@@ -889,7 +889,7 @@ repos.DataFilter.Apply("name", a => a.Id > 1) 附加新的过滤器
## v0.1.7
- FreeSql.Repository 增加 filter 参数,实数据过滤 + 验证;
- FreeSql.Repository 增加 filter 参数,实数据过滤 + 验证;
var postRepos = fsql.GetGuidRepository<Post>(a => a.TopicId == 1); postRepos CURD 方法都会以 lambda 条件作为查询或验证Update/Insert验证错误时会抛出异常。
- ISelect 增加 First/FirstAsync
@@ -911,7 +911,7 @@ repos.DataFilter.Apply("name", a => a.Id > 1) 附加新的过滤器
## v0.1.3
- FreeSql.Repository Insert 方法判断数据库类型,由于 MySql/Oracle/Sqlite 不支持 returning 或 output 类型的特性,因此不作实定义为 virtual 交给外部(不包括 PostgreSQL/SqlServer
- FreeSql.Repository Insert 方法判断数据库类型,由于 MySql/Oracle/Sqlite 不支持 returning 或 output 类型的特性,因此不作实定义为 virtual 交给外部(不包括 PostgreSQL/SqlServer
## v0.1.2
@@ -924,7 +924,7 @@ repos.DataFilter.Apply("name", a => a.Id > 1) 附加新的过滤器
## v0.1.0
- 增加 FreeSql.Repository 扩展库,实实体类的默认仓储;
- 增加 FreeSql.Repository 扩展库,实实体类的默认仓储;
- 增加主键命名约定在没有设置主键的情况下Id 或 \<type name\>Id 或 \<type name\>_Id 或 自增列 会成为主键;
- 实体特性 Column 增加 IsIgnore 忽略达到不映射的目的;
- 增加 repository_01 示例项目,演示 FreeSql.Repository
@@ -934,12 +934,12 @@ repos.DataFilter.Apply("name", a => a.Id > 1) 附加新的过滤器
- ICodeFirst.ConfigEntity 可更新实体配置已缓存的数据;
- 防止同连接字符串被IFreeSql使用多次发生连接池溢出bugado.net连接池原理减少解释成本
- 增加 efcore_to_freesql 示例项目,实与 EFCore 实体共存;
- 增加 efcore_to_freesql 示例项目,实与 EFCore 实体共存;
## v0.0.13
- 修复和丰富 ICodeFirst.ConfigEntity 方法;
- 增加 FreeSql.Extensions.EFCoreModelBuilder 扩展库,实与 EFCore 实体共存 [#4](https://github.com/2881099/FreeSql/issues/4)
- 增加 FreeSql.Extensions.EFCoreModelBuilder 扩展库,实与 EFCore 实体共存 [#4](https://github.com/2881099/FreeSql/issues/4)
- 增加 restful 示例项目;
## v0.0.12

@@ -60,7 +60,7 @@ FreeSql 适配了每一种数据类型参数化,和不参数化的使用。批
## ExecuteSqlBulkCopy、ExecutePgCopy
v1.0.0 版本增加了 Bulk Copy 操作,以扩展方法的形式实,目前只能在 FreeSql.Provider.SqlServer/FreeSql.Provider.PostgreSQL 上可用,针对 SqlServer/PostgreSQL 数据库。
v1.0.0 版本增加了 Bulk Copy 操作,以扩展方法的形式实,目前只能在 FreeSql.Provider.SqlServer/FreeSql.Provider.PostgreSQL 上可用,针对 SqlServer/PostgreSQL 数据库。
### 批量插入测试结果(52个字段)

@@ -6,7 +6,7 @@
### 方案一:按租户字段区分
FreeSql.Repository 实了 filter过滤与验证功能
FreeSql.Repository 实了 filter过滤与验证功能
```csharp
var topicRepos = fsql.GetGuidRepository<Topic>(t => t.TerantId == 1);
@@ -55,7 +55,7 @@ WHERE t1.IsDeleted = 0
### 方案二:按租户分表
FreeSql.Repository 实了 分表功能,如:
FreeSql.Repository 实了 分表功能,如:
```csharp
var tenantId = 1;

@@ -2,7 +2,7 @@
# 机制规则
【一对多】模型下, 保存时可联级保存实体的属性集合。出于使用安全考虑我们没做完整对比,只实实体属性集合的添加或更新操作,所以不会删除实体属性集合的数据。
【一对多】模型下, 保存时可联级保存实体的属性集合。出于使用安全考虑我们没做完整对比,只实实体属性集合的添加或更新操作,所以不会删除实体属性集合的数据。
完整对比的功能使用起来太危险,试想下面的场景:
- 保存的时候,实体属性集合是空的,如何操作?记录全部删除?