mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-06-18 20:08:15 +08:00
- 调整 增加支持 OneToOne 级联保存,EnableAddOrUpdateNavigateList 改名为 EnableAddOrUpdateNavigate;
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
using FreeSql.DataAnnotations;
|
||||
using FreeSql.DataAnnotations;
|
||||
using FreeSql;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@ -75,7 +75,7 @@ namespace FreeSql.Tests
|
||||
tags.Add(new Tag
|
||||
{
|
||||
Ddd = DateTime.Now.Second,
|
||||
Name = "test_manytoMany_01_<EFBFBD>й<EFBFBD>2234234"
|
||||
Name = "test_manytoMany_01_中国2234234"
|
||||
});
|
||||
tags[0].Name = "123123";
|
||||
tags.RemoveAt(1);
|
||||
@ -99,36 +99,36 @@ namespace FreeSql.Tests
|
||||
var tag1 = new Tag
|
||||
{
|
||||
Ddd = DateTime.Now.Second,
|
||||
Name = "test_manytoMany_01_<EFBFBD>й<EFBFBD>"
|
||||
Name = "test_manytoMany_01_中国"
|
||||
};
|
||||
var tag2 = new Tag
|
||||
{
|
||||
Ddd = DateTime.Now.Second,
|
||||
Name = "test_manytoMany_02_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
|
||||
Name = "test_manytoMany_02_美国"
|
||||
};
|
||||
var tag3 = new Tag
|
||||
{
|
||||
Ddd = DateTime.Now.Second,
|
||||
Name = "test_manytoMany_03_<EFBFBD>ձ<EFBFBD>"
|
||||
Name = "test_manytoMany_03_日本"
|
||||
};
|
||||
ctx.AddRange(new[] { tag1, tag2, tag3 });
|
||||
|
||||
var song1 = new Song
|
||||
{
|
||||
Create_time = DateTime.Now,
|
||||
Title = "test_manytoMany_01_<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><EFBFBD><EFBFBD>.mp3",
|
||||
Title = "test_manytoMany_01_我是中国人.mp3",
|
||||
Url = "http://ww.baidu.com/"
|
||||
};
|
||||
var song2 = new Song
|
||||
{
|
||||
Create_time = DateTime.Now,
|
||||
Title = "test_manytoMany_02_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>.mp3",
|
||||
Title = "test_manytoMany_02_爱你一万年.mp3",
|
||||
Url = "http://ww.163.com/"
|
||||
};
|
||||
var song3 = new Song
|
||||
{
|
||||
Create_time = DateTime.Now,
|
||||
Title = "test_manytoMany_03_ǧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>.mp3",
|
||||
Title = "test_manytoMany_03_千年等一回.mp3",
|
||||
Url = "http://ww.sina.com/"
|
||||
};
|
||||
ctx.AddRange(new[] { song1, song2, song3 });
|
||||
@ -155,7 +155,7 @@ namespace FreeSql.Tests
|
||||
|
||||
g.sqlite.SetDbContextOptions(opt =>
|
||||
{
|
||||
//opt.EnableAddOrUpdateNavigateList = false;
|
||||
//opt.EnableAddOrUpdateNavigate = false;
|
||||
});
|
||||
|
||||
g.mysql.Insert<testenumWhere>().AppendData(new testenumWhere { type = testenumWhereType.Blaaa }).ExecuteAffrows();
|
||||
@ -163,11 +163,11 @@ namespace FreeSql.Tests
|
||||
var sql = g.mysql.Select<testenumWhere>().Where(a => a.type == testenumWhereType.Blaaa).ToSql();
|
||||
var tolist = g.mysql.Select<testenumWhere>().Where(a => a.type == testenumWhereType.Blaaa).ToList();
|
||||
|
||||
//֧<EFBFBD><EFBFBD> 1<>Զ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
//支持 1对多 级联保存
|
||||
|
||||
using (var ctx = g.sqlite.CreateDbContext())
|
||||
{
|
||||
ctx.Options.EnableAddOrUpdateNavigateList = true;
|
||||
ctx.Options.EnableAddOrUpdateNavigate = true;
|
||||
var tags = ctx.Set<Tag>().Select.IncludeMany(a => a.Tags).ToList();
|
||||
|
||||
var tag = new Tag
|
||||
@ -195,11 +195,11 @@ namespace FreeSql.Tests
|
||||
[Fact]
|
||||
public void Update()
|
||||
{
|
||||
//<EFBFBD><EFBFBD>ѯ 1<>Զ࣬<D4B6>ټ<EFBFBD><D9BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
//查询 1对多,再级联保存
|
||||
|
||||
using (var ctx = g.sqlite.CreateDbContext())
|
||||
{
|
||||
ctx.Options.EnableAddOrUpdateNavigateList = true;
|
||||
ctx.Options.EnableAddOrUpdateNavigate = true;
|
||||
var tag = ctx.Set<Tag>().Select.First();
|
||||
tag.Tags.Add(new Tag { Name = "sub3" });
|
||||
tag.Name = Guid.NewGuid().ToString();
|
||||
|
Reference in New Issue
Block a user