@ -1,4 +1,4 @@
using FreeSql.DataAnnotations ;
using FreeSql.DataAnnotations ;
using System ;
using System.Collections.Generic ;
using System.Linq ;
@ -10,7 +10,7 @@ namespace FreeSql.Tests
public class RepositoryTests
{
/// <summary>
/// <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¡<EFBFBD>
/// 更一条无法更新。
/// </summary>
/// <returns></returns>
[Fact]
@ -70,12 +70,12 @@ namespace FreeSql.Tests
repos . Attach ( item ) ;
item . Title = "xxx" ;
repos . Update ( item ) ; //<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ִ<EFBFBD> <EFBFBD> UPDATE "AddUpdateInfo" SET "Title" = 'xxx' WHERE("Id" = '1942fb53-9700-411d-8895-ce4cecdf3257')
repos . Update ( item ) ; //这行执行 UPDATE "AddUpdateInfo" SET "Title" = 'xxx' WHERE("Id" = '1942fb53-9700-411d-8895-ce4cecdf3257')
Console . WriteLine ( Newtonsoft . Json . JsonConvert . SerializeObject ( item ) ) ;
repos . Update ( item ) ; //<EFBFBD> <EFBFBD> <EFBFBD> в<EFBFBD> ִ<EFBFBD> <EFBFBD> SQL<51> <4C> δ<EFBFBD> 仯
repos . Update ( item ) ; //这行不执行 SQL, 未变化
repos . AttachOnlyPrimary ( item ) . Update ( item ) ; //<EFBFBD> <EFBFBD> <EFBFBD> и<EFBFBD> <EFBFBD> <EFBFBD> ״ֵ̬<EFBFBD> <EFBFBD> ֻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> ִ<EFBFBD> и<EFBFBD> <EFBFBD> <EFBFBD> set title = xxx
repos . AttachOnlyPrimary ( item ) . Update ( item ) ; //这行更新状态值,只有主键值存在,执行更新 set title = xxx
Console . WriteLine ( repos . UpdateDiy . Where ( a = > a . Id = = item . Id ) . Set ( a = > a . Clicks + 1 ) . ToSql ( ) ) ;
repos . UpdateDiy . Where ( a = > a . Id = = item . Id ) . Set ( a = > a . Clicks + 1 ) . ExecuteAffrows ( ) ;
@ -140,7 +140,7 @@ namespace FreeSql.Tests
var flowRepos = fsql . GetRepository < FlowModel > ( ) ;
flowRepos . Insert ( flow ) ;
//<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
//事务添加
flow = new FlowModel ( )
{
CreateTime = DateTime . Now ,
@ -192,7 +192,7 @@ namespace FreeSql.Tests
var uowFlowRepos = uow . GetRepository < FlowModel > ( ) ;
uowFlowRepos . Insert ( flow ) ;
uowFlowRepos . Orm . Select < FlowModel > ( ) . ToList ( ) ;
//<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> commit<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ύ<EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
//不调用commit将不会提交数据库更改
//uow.Commit();
}
Assert . False ( flowRepos . Select . Any ( a = > a . UserId = = 1 & & a . Name = = "aaa" ) ) ;
@ -241,36 +241,36 @@ namespace FreeSql.Tests
var cts = new [ ] {
new Cagetory
{
Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1" ,
Name = "分类 1" ,
Goodss = new List < Goods > ( new [ ]
{
new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 1" } ,
new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 2" } ,
new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 3" }
new Goods { Name = "商品 1" } ,
new Goods { Name = "商品 2" } ,
new Goods { Name = "商品 3" }
} )
} ,
new Cagetory
{
Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2" ,
Name = "分类 2" ,
Goodss = new List < Goods > ( new [ ]
{
new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 4" } ,
new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 5" }
new Goods { Name = "商品 4" } ,
new Goods { Name = "商品 5" }
} )
}
} ;
repo . Insert ( cts ) ;
cts [ 0 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 11" ;
cts [ 0 ] . Name = "分类 11" ;
cts [ 0 ] . Goodss . Clear ( ) ;
cts [ 1 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 22" ;
cts [ 1 ] . Name = "分类 22" ;
cts [ 1 ] . Goodss . Clear ( ) ;
repo . Update ( cts ) ;
cts [ 0 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 111" ;
cts [ 0 ] . Name = "分类 111" ;
cts [ 0 ] . Goodss . Clear ( ) ;
cts [ 0 ] . Goodss . Add ( new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 33" } ) ;
cts [ 1 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 222" ;
cts [ 0 ] . Goodss . Add ( new Goods { Name = "商品 33" } ) ;
cts [ 1 ] . Name = "分类 222" ;
cts [ 1 ] . Goodss . Clear ( ) ;
cts [ 1 ] . Goodss . Add ( new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 55" } ) ;
cts [ 1 ] . Goodss . Add ( new Goods { Name = "商品 55" } ) ;
repo . Update ( cts ) ;
var cts2 = repo . Select . WhereDynamic ( cts ) . IncludeMany ( a = > a . Goodss ) . ToList ( ) ;
@ -304,36 +304,36 @@ namespace FreeSql.Tests
var cts = new [ ] {
new CagetoryLD
{
Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1" ,
Name = "分类 1" ,
Goodss = new List < GoodsLD > ( new [ ]
{
new GoodsLD { Name = "<EFBFBD> <EFBFBD> Ʒ 1" } ,
new GoodsLD { Name = "<EFBFBD> <EFBFBD> Ʒ 2" } ,
new GoodsLD { Name = "<EFBFBD> <EFBFBD> Ʒ 3" }
new GoodsLD { Name = "商品 1" } ,
new GoodsLD { Name = "商品 2" } ,
new GoodsLD { Name = "商品 3" }
} )
} ,
new CagetoryLD
{
Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2" ,
Name = "分类 2" ,
Goodss = new List < GoodsLD > ( new [ ]
{
new GoodsLD { Name = "<EFBFBD> <EFBFBD> Ʒ 4" } ,
new GoodsLD { Name = "<EFBFBD> <EFBFBD> Ʒ 5" }
new GoodsLD { Name = "商品 4" } ,
new GoodsLD { Name = "商品 5" }
} )
}
} ;
repo . Insert ( cts ) ;
cts [ 0 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 11" ;
cts [ 0 ] . Name = "分类 11" ;
cts [ 0 ] . Goodss . Clear ( ) ;
cts [ 1 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 22" ;
cts [ 1 ] . Name = "分类 22" ;
cts [ 1 ] . Goodss . Clear ( ) ;
repo . Update ( cts ) ;
cts [ 0 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 111" ;
cts [ 0 ] . Name = "分类 111" ;
cts [ 0 ] . Goodss . Clear ( ) ;
cts [ 0 ] . Goodss . Add ( new GoodsLD { Name = "<EFBFBD> <EFBFBD> Ʒ 33" } ) ;
cts [ 1 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 222" ;
cts [ 0 ] . Goodss . Add ( new GoodsLD { Name = "商品 33" } ) ;
cts [ 1 ] . Name = "分类 222" ;
cts [ 1 ] . Goodss . Clear ( ) ;
cts [ 1 ] . Goodss . Add ( new GoodsLD { Name = "<EFBFBD> <EFBFBD> Ʒ 55" } ) ;
cts [ 1 ] . Goodss . Add ( new GoodsLD { Name = "商品 55" } ) ;
repo . Update ( cts ) ;
var cts2 = repo . Select . WhereDynamic ( cts ) . IncludeMany ( a = > a . Goodss ) . ToList ( ) ;
@ -369,52 +369,52 @@ namespace FreeSql.Tests
public void SaveMany_OneToMany ( )
{
var repo = g . sqlite . GetRepository < Cagetory > ( ) ;
repo . DbContextOptions . EnableAddOrUpdateNavigateList = false ; //<EFBFBD> رռ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 湦<EFBFBD> <EFBFBD>
repo . DbContextOptions . EnableAddOrUpdateNavigateList = false ; //关闭级联保存功能
var cts = new [ ] {
new Cagetory
{
Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1" ,
Name = "分类 1" ,
Goodss = new List < Goods > ( new [ ]
{
new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 1" } ,
new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 2" } ,
new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 3" }
new Goods { Name = "商品 1" } ,
new Goods { Name = "商品 2" } ,
new Goods { Name = "商品 3" }
} )
} ,
new Cagetory
{
Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2" ,
Name = "分类 2" ,
Goodss = new List < Goods > ( new [ ]
{
new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 4" } ,
new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 5" }
new Goods { Name = "商品 4" } ,
new Goods { Name = "商品 5" }
} )
}
} ;
repo . Insert ( cts ) ;
repo . SaveMany ( cts [ 0 ] , "Goodss" ) ; //ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Goodss һ <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
repo . SaveMany ( cts [ 1 ] , "Goodss" ) ; //ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Goodss һ <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
repo . SaveMany ( cts [ 0 ] , "Goodss" ) ; //指定保存 Goodss 一对多属性
repo . SaveMany ( cts [ 1 ] , "Goodss" ) ; //指定保存 Goodss 一对多属性
cts [ 0 ] . Goodss . RemoveAt ( 1 ) ;
cts [ 1 ] . Goodss . RemoveAt ( 1 ) ;
repo . SaveMany ( cts [ 0 ] , "Goodss" ) ; //ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Goodss һ <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
repo . SaveMany ( cts [ 1 ] , "Goodss" ) ; //ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Goodss һ <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
repo . SaveMany ( cts [ 0 ] , "Goodss" ) ; //指定保存 Goodss 一对多属性
repo . SaveMany ( cts [ 1 ] , "Goodss" ) ; //指定保存 Goodss 一对多属性
cts [ 0 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 11" ;
cts [ 0 ] . Name = "分类 11" ;
cts [ 0 ] . Goodss . Clear ( ) ;
cts [ 1 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 22" ;
cts [ 1 ] . Name = "分类 22" ;
cts [ 1 ] . Goodss . Clear ( ) ;
repo . Update ( cts ) ;
repo . SaveMany ( cts [ 0 ] , "Goodss" ) ; //ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Goodss һ <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
repo . SaveMany ( cts [ 1 ] , "Goodss" ) ; //ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Goodss һ <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
cts [ 0 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 111" ;
repo . SaveMany ( cts [ 0 ] , "Goodss" ) ; //指定保存 Goodss 一对多属性
repo . SaveMany ( cts [ 1 ] , "Goodss" ) ; //指定保存 Goodss 一对多属性
cts [ 0 ] . Name = "分类 111" ;
cts [ 0 ] . Goodss . Clear ( ) ;
cts [ 0 ] . Goodss . Add ( new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 33" } ) ;
cts [ 1 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 222" ;
cts [ 0 ] . Goodss . Add ( new Goods { Name = "商品 33" } ) ;
cts [ 1 ] . Name = "分类 222" ;
cts [ 1 ] . Goodss . Clear ( ) ;
cts [ 1 ] . Goodss . Add ( new Goods { Name = "<EFBFBD> <EFBFBD> Ʒ 55" } ) ;
cts [ 1 ] . Goodss . Add ( new Goods { Name = "商品 55" } ) ;
repo . Update ( cts ) ;
repo . SaveMany ( cts [ 0 ] , "Goodss" ) ; //ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Goodss һ <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
repo . SaveMany ( cts [ 1 ] , "Goodss" ) ; //ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Goodss һ <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
repo . SaveMany ( cts [ 0 ] , "Goodss" ) ; //指定保存 Goodss 一对多属性
repo . SaveMany ( cts [ 1 ] , "Goodss" ) ; //指定保存 Goodss 一对多属性
}
[Fact]
@ -425,42 +425,42 @@ namespace FreeSql.Tests
var cts = new [ ] {
new CagetoryParent
{
Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1" ,
Name = "分类 1" ,
Childs = new List < CagetoryParent > ( new [ ]
{
new CagetoryParent { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_1" } ,
new CagetoryParent { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_2" } ,
new CagetoryParent { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_3" }
new CagetoryParent { Name = "分类 1_1" } ,
new CagetoryParent { Name = "分类 1_2" } ,
new CagetoryParent { Name = "分类 1_3" }
} )
} ,
new CagetoryParent
{
Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2" ,
Name = "分类 2" ,
Childs = new List < CagetoryParent > ( new [ ]
{
new CagetoryParent { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_1" } ,
new CagetoryParent { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_2" }
new CagetoryParent { Name = "分类 2_1" } ,
new CagetoryParent { Name = "分类 2_2" }
} )
}
} ;
repo . DbContextOptions . EnableAddOrUpdateNavigateList = true ; //<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 湦<EFBFBD> <EFBFBD>
repo . DbContextOptions . EnableAddOrUpdateNavigateList = true ; //打开级联保存功能
repo . Insert ( cts ) ;
var notreelist1 = repo . Select . ToList ( ) ;
var treelist1 = repo . Select . ToTreeList ( ) ;
//repo.SaveMany(cts[0], "Childs"); //ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Childs һ <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
cts [ 0 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 11" ;
//repo.SaveMany(cts[0], "Childs"); //指定保存 Childs 一对多属性
cts [ 0 ] . Name = "分类 11" ;
cts [ 0 ] . Childs . Clear ( ) ;
cts [ 1 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 22" ;
cts [ 1 ] . Name = "分类 22" ;
cts [ 1 ] . Childs . Clear ( ) ;
repo . Update ( cts ) ;
cts [ 0 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 111" ;
cts [ 0 ] . Name = "分类 111" ;
cts [ 0 ] . Childs . Clear ( ) ;
cts [ 0 ] . Childs . Add ( new CagetoryParent { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_33" } ) ;
cts [ 1 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 222" ;
cts [ 0 ] . Childs . Add ( new CagetoryParent { Name = "分类 1_33" } ) ;
cts [ 1 ] . Name = "分类 222" ;
cts [ 1 ] . Childs . Clear ( ) ;
cts [ 1 ] . Childs . Add ( new CagetoryParent { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_22" } ) ;
cts [ 1 ] . Childs . Add ( new CagetoryParent { Name = "分类 2_22" } ) ;
repo . Update ( cts ) ;
var treelist2 = repo . Select . ToTreeList ( ) ;
}
@ -479,16 +479,16 @@ namespace FreeSql.Tests
public void EnableAddOrUpdateNavigateList_ManyToMany ( )
{
var tags = new [ ] {
new Tag { TagName = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> " } ,
new Tag { TagName = "80<EFBFBD> <EFBFBD> " } ,
new Tag { TagName = "00<EFBFBD> <EFBFBD> " } ,
new Tag { TagName = "ҡ<EFBFBD> <EFBFBD> " }
new Tag { TagName = "流行 " } ,
new Tag { TagName = "80后 " } ,
new Tag { TagName = "00后 " } ,
new Tag { TagName = "摇滚 " }
} ;
var ss = new [ ]
{
new Song
{
Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .mp3" ,
Name = "爱你一万年 .mp3" ,
Tags = new List < Tag > ( new [ ]
{
tags [ 0 ] , tags [ 1 ]
@ -496,7 +496,7 @@ namespace FreeSql.Tests
} ,
new Song
{
Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .mp3" ,
Name = "李白 .mp3" ,
Tags = new List < Tag > ( new [ ]
{
tags [ 0 ] , tags [ 2 ]
@ -504,23 +504,23 @@ namespace FreeSql.Tests
}
} ;
var repo = g . sqlite . GetRepository < Song > ( ) ;
repo . DbContextOptions . EnableAddOrUpdateNavigateList = true ; //<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 湦<EFBFBD> <EFBFBD>
repo . DbContextOptions . EnableAddOrUpdateNavigateList = true ; //打开级联保存功能
repo . Insert ( ss ) ;
ss [ 0 ] . Tags [ 0 ] . TagName = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 101" ;
repo . SaveMany ( ss [ 0 ] , "Tags" ) ; //ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Tags <20> <> <EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> <EFBFBD>
ss [ 0 ] . Tags [ 0 ] . TagName = "流行 101" ;
repo . SaveMany ( ss [ 0 ] , "Tags" ) ; //指定保存 Tags 多对多属性
ss [ 0 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .mp5" ;
ss [ 0 ] . Name = "爱你一万年 .mp5" ;
ss [ 0 ] . Tags . Clear ( ) ;
ss [ 0 ] . Tags . Add ( tags [ 0 ] ) ;
ss [ 1 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .mp5" ;
ss [ 1 ] . Name = "李白 .mp5" ;
ss [ 1 ] . Tags . Clear ( ) ;
ss [ 1 ] . Tags . Add ( tags [ 3 ] ) ;
repo . Update ( ss ) ;
ss [ 0 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .mp4" ;
ss [ 0 ] . Name = "爱你一万年 .mp4" ;
ss [ 0 ] . Tags . Clear ( ) ;
ss [ 1 ] . Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .mp4" ;
ss [ 1 ] . Name = "李白 .mp4" ;
ss [ 1 ] . Tags . Clear ( ) ;
repo . Update ( ss ) ;
}
@ -553,19 +553,19 @@ namespace FreeSql.Tests
g . sqlite . Delete < BeginEdit01 > ( ) . Where ( "1=1" ) . ExecuteAffrows ( ) ;
var repo = g . sqlite . GetRepository < BeginEdit01 > ( ) ;
var cts = new [ ] {
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_1" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_2" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_3" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_1" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_2" }
new BeginEdit01 { Name = "分类 1" } ,
new BeginEdit01 { Name = "分类 1_1" } ,
new BeginEdit01 { Name = "分类 1_2" } ,
new BeginEdit01 { Name = "分类 1_3" } ,
new BeginEdit01 { Name = "分类 2" } ,
new BeginEdit01 { Name = "分类 2_1" } ,
new BeginEdit01 { Name = "分类 2_2" }
} . ToList ( ) ;
repo . Insert ( cts ) ;
repo . BeginEdit ( cts ) ;
cts . Add ( new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_3" } ) ;
cts . Add ( new BeginEdit01 { Name = "分类 2_3" } ) ;
cts [ 0 ] . Name = "123123" ;
cts . RemoveAt ( 1 ) ;
@ -577,13 +577,13 @@ namespace FreeSql.Tests
repo . BeginEdit ( cts ) ;
cts . AddRange ( new [ ] {
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_1" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_2" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_3" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_1" } ,
new BeginEdit01 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_2" }
new BeginEdit01 { Name = "分类 1" } ,
new BeginEdit01 { Name = "分类 1_1" } ,
new BeginEdit01 { Name = "分类 1_2" } ,
new BeginEdit01 { Name = "分类 1_3" } ,
new BeginEdit01 { Name = "分类 2" } ,
new BeginEdit01 { Name = "分类 2_1" } ,
new BeginEdit01 { Name = "分类 2_2" }
} ) ;
Assert . Equal ( 7 , repo . EndEdit ( ) ) ;
@ -600,19 +600,19 @@ namespace FreeSql.Tests
fsql . Delete < BeginEdit02 > ( ) . Where ( "1=1" ) . ExecuteAffrows ( ) ;
var repo = fsql . GetRepository < BeginEdit02 > ( ) ;
var cts = new [ ] {
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_1" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_2" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_3" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_1" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_2" }
new BeginEdit02 { Name = "分类 1" } ,
new BeginEdit02 { Name = "分类 1_1" } ,
new BeginEdit02 { Name = "分类 1_2" } ,
new BeginEdit02 { Name = "分类 1_3" } ,
new BeginEdit02 { Name = "分类 2" } ,
new BeginEdit02 { Name = "分类 2_1" } ,
new BeginEdit02 { Name = "分类 2_2" }
} . ToList ( ) ;
repo . Insert ( cts ) ;
repo . BeginEdit ( cts ) ;
cts . Add ( new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_3" } ) ;
cts . Add ( new BeginEdit02 { Name = "分类 2_3" } ) ;
cts [ 0 ] . Name = "123123" ;
cts . RemoveAt ( 1 ) ;
@ -624,13 +624,13 @@ namespace FreeSql.Tests
repo . BeginEdit ( cts ) ;
cts . AddRange ( new [ ] {
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_1" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_2" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1_3" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_1" } ,
new BeginEdit02 { Name = "<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2_2" }
new BeginEdit02 { Name = "分类 1" } ,
new BeginEdit02 { Name = "分类 1_1" } ,
new BeginEdit02 { Name = "分类 1_2" } ,
new BeginEdit02 { Name = "分类 1_3" } ,
new BeginEdit02 { Name = "分类 2" } ,
new BeginEdit02 { Name = "分类 2_1" } ,
new BeginEdit02 { Name = "分类 2_2" }
} ) ;
Assert . Equal ( 7 , repo . EndEdit ( ) ) ;
@ -747,5 +747,69 @@ namespace FreeSql.Tests
public int id { get ; set ; }
public bool bool_val { get ; set ; }
}
[Fact]
public void InsertIdentity ( )
{
var fsql = g . mysql ;
fsql . Delete < TaskDetailTeam > ( ) . Where ( "1=1" ) . ExecuteAffrows ( ) ;
var repo = fsql . GetRepository < TaskDetailTeam > ( ) ;
var team = new TaskDetailTeam ( ) ;
repo . Insert ( team ) ;
team = new TaskDetailTeam
{
TaskId = 1 ,
UserId = 11 ,
IsYanShou = 1 ,
AccessType = "xxxAccessType1"
} ;
repo . Insert ( team ) ;
var teams = new [ ]
{
new TaskDetailTeam
{
TaskId = 2 ,
UserId = 22 ,
IsYanShou = 2 ,
AccessType = "xxxAccessType2"
} , new TaskDetailTeam
{
TaskId = 3 ,
UserId = 33 ,
IsYanShou = 3 ,
AccessType = "xxxAccessType3"
}
} ;
repo . Insert ( teams ) ;
}
[Table(Name = "task_detail_team")]
public class TaskDetailTeam
{
[Column(Name = "id", IsPrimary = true, IsIdentity = true)]
public int Id { get ; set ; }
[Column(Name = "createdAt", DbType = "datetime", ServerTime = DateTimeKind.Local, CanUpdate = false)]
public DateTime CreatedAt { get ; set ; }
[Column(Name = "taskId")]
public int TaskId { get ; set ; }
[Column(Name = "updatedAt", DbType = "datetime", ServerTime = DateTimeKind.Local)]
public DateTime UpdatedAt { get ; set ; }
[Column(Name = "userId")]
public int UserId { get ; set ; }
[Column(Name = "is_yanshou")]
public int IsYanShou { get ; set ; }
[Column(IsIgnore = true)]
public string AccessType { get ; set ; }
}
}
}