- 增加 RawValueAttribute 实现自定义表达式时,使用原始值传入参数;

- 增加 IEnumerable<(T1, T2)>.ContainsMany 扩展方法,实现自定义表达式解析多列无法 IN 的问题;
This commit is contained in:
28810
2019-12-08 00:03:35 +08:00
parent c942811548
commit 011cc8d0d8
6 changed files with 154 additions and 14 deletions

View File

@ -252,6 +252,14 @@ namespace FreeSql.Tests
}
});
List<(Guid, DateTime)> contains2linqarr = new List<(Guid, DateTime)>();
Assert.Equal("SELECT 1 as1 FROM \"TestIgnoreDefaultValue\" a WHERE (1=0)", g.sqlite.Select<TestIgnoreDefaultValue>().Where(a => contains2linqarr.ContainsMany(a.Id, a.ct1)).ToSql(a => 1).Replace("\r\n", ""));
g.sqlite.Select<TestIgnoreDefaultValue>().Where(a => contains2linqarr.ContainsMany(a.Id, a.ct1)).ToList();
contains2linqarr.Add((Guid.NewGuid(), DateTime.Now));
contains2linqarr.Add((Guid.NewGuid(), DateTime.Now));
contains2linqarr.Add((Guid.NewGuid(), DateTime.Now));
g.sqlite.Select<TestIgnoreDefaultValue>().Where(a => contains2linqarr.ContainsMany(a.Id, a.ct1)).ToList();
var start = DateTime.Now.Date;
var end = DateTime.Now.AddDays(1).Date.AddMilliseconds(-1);