mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-06-28 13:34:32 +08:00
Update exp to sql
This commit is contained in:
parent
ca1801038c
commit
92a6e26dac
@ -11,14 +11,14 @@ namespace OrmTest
|
|||||||
//OldTestMain.Init();
|
//OldTestMain.Init();
|
||||||
|
|
||||||
//Demo
|
//Demo
|
||||||
Demo0_SqlSugarClient.Init();
|
//Demo0_SqlSugarClient.Init();
|
||||||
Demo1_Queryable.Init();
|
//Demo1_Queryable.Init();
|
||||||
Demo2_Updateable.Init();
|
//Demo2_Updateable.Init();
|
||||||
Democ_GobalFilter.Init();
|
//Democ_GobalFilter.Init();
|
||||||
DemoD_DbFirst.Init();
|
//DemoD_DbFirst.Init();
|
||||||
DemoE_CodeFirst.Init();
|
//DemoE_CodeFirst.Init();
|
||||||
Demo5_SqlQueryable.Init();
|
//Demo5_SqlQueryable.Init();
|
||||||
Demo6_Queue.Init();
|
//Demo6_Queue.Init();
|
||||||
|
|
||||||
//Unit test
|
//Unit test
|
||||||
NewUnitTest.Init();
|
NewUnitTest.Init();
|
||||||
|
@ -8,13 +8,14 @@ namespace OrmTest
|
|||||||
{
|
{
|
||||||
public partial class NewUnitTest
|
public partial class NewUnitTest
|
||||||
{
|
{
|
||||||
public static void Queryable() {
|
public static void Queryable()
|
||||||
|
{
|
||||||
|
|
||||||
var pageindex = 1;
|
var pageindex = 1;
|
||||||
var pagesize = 10;
|
var pagesize = 10;
|
||||||
var total = 0;
|
var total = 0;
|
||||||
var totalPage = 0;
|
var totalPage = 0;
|
||||||
var list=Db.Queryable<Order>().ToPageList(pageindex, pagesize, ref total, ref totalPage);
|
var list = Db.Queryable<Order>().ToPageList(pageindex, pagesize, ref total, ref totalPage);
|
||||||
|
|
||||||
//Db.CodeFirst.InitTables(typeof(CarType));
|
//Db.CodeFirst.InitTables(typeof(CarType));
|
||||||
//Db.Updateable<CarType>()
|
//Db.Updateable<CarType>()
|
||||||
@ -31,26 +32,47 @@ namespace OrmTest
|
|||||||
|
|
||||||
Db.Queryable<Order>().Where(it => SqlSugar.SqlFunc.Equals(it.CreateTime.Date, it.CreateTime.Date)).ToList();
|
Db.Queryable<Order>().Where(it => SqlSugar.SqlFunc.Equals(it.CreateTime.Date, it.CreateTime.Date)).ToList();
|
||||||
|
|
||||||
var sql= Db.Queryable<UnitSelectTest>().Select(it => new UnitSelectTest()
|
var sql = Db.Queryable<UnitSelectTest>().Select(it => new UnitSelectTest()
|
||||||
{
|
{
|
||||||
|
|
||||||
DcNull=it.Dc,
|
DcNull = it.Dc,
|
||||||
Dc=it.Int
|
Dc = it.Int
|
||||||
}).ToSql().Key;
|
}).ToSql().Key;
|
||||||
UValidate.Check(sql, "SELECT [Dc] AS [DcNull] , [Int] AS [Dc] FROM [UnitSelectTest]", "Queryable");
|
UValidate.Check(sql, "SELECT [Dc] AS [DcNull] , [Int] AS [Dc] FROM [UnitSelectTest]", "Queryable");
|
||||||
|
|
||||||
sql= Db.Updateable<UnitSelectTest2>(new UnitSelectTest2()).ToSql().Key;
|
sql = Db.Updateable<UnitSelectTest2>(new UnitSelectTest2()).ToSql().Key;
|
||||||
UValidate.Check(sql, @"UPDATE [UnitSelectTest2] SET
|
UValidate.Check(sql, @"UPDATE [UnitSelectTest2] SET
|
||||||
[Dc]=@Dc,[IntNull]=@IntNull WHERE [Int]=@Int", "Queryable");
|
[Dc]=@Dc,[IntNull]=@IntNull WHERE [Int]=@Int", "Queryable");
|
||||||
|
|
||||||
sql= Db.Queryable<Order>().IgnoreColumns(it => it.CreateTime).ToSql().Key;
|
sql = Db.Queryable<Order>().IgnoreColumns(it => it.CreateTime).ToSql().Key;
|
||||||
UValidate.Check(sql, "SELECT [Id],[Name],[Price],[CustomId] FROM [Order] ", "Queryable");
|
UValidate.Check(sql, "SELECT [Id],[Name],[Price],[CustomId] FROM [Order] ", "Queryable");
|
||||||
sql = Db.Queryable<Order>().IgnoreColumns(it => new { it.Id,it.Name }).ToSql().Key;
|
sql = Db.Queryable<Order>().IgnoreColumns(it => new { it.Id, it.Name }).ToSql().Key;
|
||||||
UValidate.Check(sql, "SELECT [Price],[CreateTime],[CustomId] FROM [Order] ", "Queryable");
|
UValidate.Check(sql, "SELECT [Price],[CreateTime],[CustomId] FROM [Order] ", "Queryable");
|
||||||
sql = Db.Queryable<Order>().IgnoreColumns("id").ToSql().Key;
|
sql = Db.Queryable<Order>().IgnoreColumns("id").ToSql().Key;
|
||||||
UValidate.Check(sql, "SELECT [Name],[Price],[CreateTime],[CustomId] FROM [Order] ", "Queryable");
|
UValidate.Check(sql, "SELECT [Name],[Price],[CreateTime],[CustomId] FROM [Order] ", "Queryable");
|
||||||
|
|
||||||
|
var cts = IEnumerbleContains.Data();
|
||||||
|
var list2=Db.Queryable<Order>()
|
||||||
|
.Where(p => /*ids.*/cts.Select(c => c.Id).Contains(p.Id)).ToList();
|
||||||
|
|
||||||
|
var cts2 = IEnumerbleContains.Data().ToList(); ;
|
||||||
|
var list3 = Db.Queryable<Order>()
|
||||||
|
.Where(p => /*ids.*/cts2.Select(c => c.Id).Contains(p.Id)).ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static class IEnumerbleContains
|
||||||
|
{
|
||||||
|
public static IEnumerable<Order> Data()
|
||||||
|
{
|
||||||
|
for (int i = 0; i < 100; i++)
|
||||||
|
{
|
||||||
|
yield return new Order
|
||||||
|
{
|
||||||
|
Id = i,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public class UnitSelectTest2
|
public class UnitSelectTest2
|
||||||
@ -70,7 +92,7 @@ namespace OrmTest
|
|||||||
public int? IntNull { get; set; }
|
public int? IntNull { get; set; }
|
||||||
public decimal Int { get; set; }
|
public decimal Int { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class UnitGuidTable
|
public class UnitGuidTable
|
||||||
{
|
{
|
||||||
public Guid? Id { get; set; }
|
public Guid? Id { get; set; }
|
||||||
|
@ -515,6 +515,14 @@ namespace SqlSugar
|
|||||||
case "Contains":
|
case "Contains":
|
||||||
return this.Context.DbMehtods.Contains(model);
|
return this.Context.DbMehtods.Contains(model);
|
||||||
case "ContainsArray":
|
case "ContainsArray":
|
||||||
|
if (model.Args[0].MemberValue == null)
|
||||||
|
{
|
||||||
|
var first = this.Context.Parameters.FirstOrDefault(it => it.ParameterName == model.Args[0].MemberName.ObjToString());
|
||||||
|
if (first.HasValue())
|
||||||
|
{
|
||||||
|
model.Args[0].MemberValue = first.Value;
|
||||||
|
}
|
||||||
|
}
|
||||||
var caResult = this.Context.DbMehtods.ContainsArray(model);
|
var caResult = this.Context.DbMehtods.ContainsArray(model);
|
||||||
this.Context.Parameters.RemoveAll(it => it.ParameterName == model.Args[0].MemberName.ObjToString());
|
this.Context.Parameters.RemoveAll(it => it.ParameterName == model.Args[0].MemberName.ObjToString());
|
||||||
return caResult;
|
return caResult;
|
||||||
|
Loading…
Reference in New Issue
Block a user