SqlSugar/Src/Asp.Net/SqlServerTest/UnitTest/UCustom20.cs
2022-09-10 20:18:36 +08:00

108 lines
3.4 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OrmTest
{
public class UCustom20
{
public static void Init()
{
var db = NewUnitTest.Db;
db.DbMaintenance.TruncateTable<Order>();
db.Insertable(new Order() { Id = 1, Name = "jack", CreateTime = DateTime.Now, CustomId = 1 }).ExecuteCommand();
var test1 = db.Queryable<Order>()
.ToList(z => new
{
name1 = new { z.Id, z.Name, ZId = 100 }
}).First();
if (test1.name1.Id != 1 || test1.name1.Name != "jack" || test1.name1.ZId != 100)
{
throw new Exception("unit error");
}
var test2 = db.Queryable<Order>()
.ToList(z => new
{
name1 = new { z.Id, z.Name, ZId = z.Id.ToString() }
}).First();
if (test2.name1.Id != 1 || test2.name1.Name != "jack" || test2.name1.ZId != "1")
{
throw new Exception("unit error");
}
var test3 = db.Queryable<Order>()
.Take(2)
.Select(i => new TestDTO
{
SubOne = new TestSubDTO { NameOne = "a1", NameTwo = i.Id.ToString() },
// SubTwo = new TestSubDTO { NameOne = i.Name, NameTwo = i.Name }
})
.First();
if (test3.SubOne.NameOne != "a1" || test3.SubOne.NameTwo != "1")
{
throw new Exception("unit error");
}
var test4 = db.Queryable<Order>()
.Take(2)
.Select(i => new TestDTO
{
SubOne = new TestSubDTO { NameOne = "a1", NameTwo = i.Name },
//SubTwo = new TestSubDTO { NameOne = i.Name, NameTwo = i.Name }
})
.ToList().First();
if (test4.SubOne.NameOne != "a1" || test4.SubOne.NameTwo != "jack")
{
throw new Exception("unit error");
}
var test5 = db.Queryable<Order>()
.Take(2)
.Select(i => new TestDTO
{
SubOne = new TestSubDTO { NameOne = i.Name, NameTwo = i.Name },
//SubTwo = new TestSubDTO { NameOne = i.Name, NameTwo = i.Name }
})
.ToList().First();
if (test5.SubOne.NameOne != "jack" || test5.SubOne.NameTwo != "jack")
{
throw new Exception("unit error");
}
var test6 = db.Queryable<Order>()
.Take(2)
.Select(i => new TestDTO
{
SubOne = new TestSubDTO { NameOne = i.Name+"1", NameTwo = i.Name+"2" },
SubTwo = new TestSubDTO { NameOne = i.Name+"3", NameTwo = i.Name+"4" }
})
.ToList().First();
if (test6.SubOne.NameOne != "jack1" || test6.SubOne.NameTwo != "jack2"||
test6.SubTwo.NameOne != "jack3" || test6.SubTwo.NameTwo != "jack4")
{
throw new Exception("unit error");
}
}
public class TestDTO
{
public TestSubDTO SubOne { get; set; }
public TestSubDTO SubTwo { get; set; }
}
public class TestSubDTO
{
public string NameOne { get; set; }
public string NameTwo { get; set; }
}
}
}