SqlSugar/Src/Asp.NetCore2/SqlSeverTest/UserTestCases/UnitTest/UnitValueObject.cs

137 lines
4.2 KiB
C#
Raw Normal View History

2024-03-24 22:41:57 +08:00
using SqlSugar.DbConvert;
using SqlSugar;
using System;
2024-01-31 00:19:20 +08:00
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
namespace OrmTest
{
internal class UnitValueObject
{
2024-02-08 17:00:58 +08:00
public static void Init()
2024-01-31 00:19:20 +08:00
{
var db = NewUnitTest.Db;
2024-03-24 22:41:57 +08:00
db.Aop.DataExecuting = (s, y) =>
{
};
db.CodeFirst.InitTables<UnitCustomeradfafas1>();
db.DbMaintenance.TruncateTable<UnitCustomeradfafas1>();
db.Insertable(new UnitCustomeradfafas1()
2024-01-31 00:19:20 +08:00
{
2024-02-08 17:00:58 +08:00
CustomerId = 1,
Name = "name",
2024-03-24 22:41:57 +08:00
Address = new UnitAddressadfafa2221()
2024-02-08 17:00:58 +08:00
{
City = "city",
Street = "street",
2024-03-24 22:41:57 +08:00
ZipCode = "zipCode",
DbType = DbType.MySql
2024-02-08 17:00:58 +08:00
}
2024-01-31 00:19:20 +08:00
}).ExecuteCommand();
2024-03-24 22:41:57 +08:00
var data = db.Queryable<UnitCustomeradfafas1>().First();
2024-02-08 17:00:58 +08:00
if (data.Name != "name" || data.Address.City != "city")
{
throw new Exception("unit error");
}
2024-03-24 22:41:57 +08:00
db.Updateable(new UnitCustomeradfafas1()
2024-01-31 00:19:20 +08:00
{
CustomerId = 1,
Name = "name2",
2024-03-24 22:41:57 +08:00
Address = new UnitAddressadfafa2221()
2024-01-31 00:19:20 +08:00
{
City = "city2",
Street = "street2",
2024-03-24 22:41:57 +08:00
ZipCode = "zipCode2",
DbType=DbType.MySql
2024-01-31 00:19:20 +08:00
}
}).ExecuteCommand();
2024-02-08 17:00:58 +08:00
2024-03-24 22:41:57 +08:00
data = db.Queryable<UnitCustomeradfafas1>().First();
2024-02-08 17:00:58 +08:00
if (data.Name != "name2" || data.Address.City != "city2")
{
throw new Exception("unit error");
}
2024-03-24 22:41:57 +08:00
var list = db.Queryable<UnitCustomeradfafas1>().ToList();
2024-02-08 17:00:58 +08:00
2024-03-24 22:41:57 +08:00
db.Insertable(new List<UnitCustomeradfafas1>(){
new UnitCustomeradfafas1()
2024-02-08 17:00:58 +08:00
{
CustomerId = 3,
Name = "name3",
2024-03-24 22:41:57 +08:00
Address = new UnitAddressadfafa2221()
2024-02-08 17:00:58 +08:00
{
City = "city3",
Street = "street3",
2024-03-24 22:41:57 +08:00
ZipCode = "zipCode3",
DbType=DbType.MySql
2024-02-08 17:00:58 +08:00
}
},
2024-03-24 22:41:57 +08:00
new UnitCustomeradfafas1()
2024-02-08 17:00:58 +08:00
{
CustomerId = 4,
Name = "name4",
2024-03-24 22:41:57 +08:00
Address = new UnitAddressadfafa2221()
2024-02-08 17:00:58 +08:00
{
City = "city4",
Street = "street4",
2024-03-24 22:41:57 +08:00
ZipCode = "zipCode4",
DbType=DbType.MySql
2024-02-08 17:00:58 +08:00
}
}
}).ExecuteCommand();
2024-02-05 19:41:53 +08:00
2024-03-24 22:41:57 +08:00
var list2 = db.Queryable<UnitCustomeradfafas1>()
2024-02-08 17:00:58 +08:00
.Where(it => it.Address.City == "city2")
.Select(it => new
{
2024-02-05 19:41:53 +08:00
Street = it.Address.Street
}).ToList();
2024-02-08 17:00:58 +08:00
if (list2.Single().Street != "street2")
{
throw new Exception("unit error");
}
2024-03-24 22:41:57 +08:00
if (db.Queryable<UnitCustomeradfafas1>().Count() != 3)
2024-02-08 17:00:58 +08:00
{
throw new Exception("unit error");
}
2024-03-24 22:41:57 +08:00
var list3=db.Queryable<UnitCustomeradfafas1>().ToList();
2024-02-08 17:00:58 +08:00
data = list3.Last();
if (data.Name != "name4" || data.Address.City != "city4")
{
throw new Exception("unit error");
}
2024-01-31 00:19:20 +08:00
}
}
2024-03-24 22:41:57 +08:00
public class UnitAddressadfafa2221
2024-01-31 00:19:20 +08:00
{
2024-02-08 17:00:58 +08:00
public string Street { get; set; }
public string City { get; set; }
2024-03-24 22:41:57 +08:00
2024-02-08 17:00:58 +08:00
public string ZipCode { get; set; }
2024-03-24 22:41:57 +08:00
[SugarColumn(ColumnDataType ="VARCHAR(20)",SqlParameterDbType = typeof(EnumToStringConvert))]//CommonPropertyConvertORM自带的
public DbType DbType { get; set; }
2024-02-08 17:00:58 +08:00
2024-01-31 00:19:20 +08:00
}
2024-03-24 22:41:57 +08:00
public class UnitCustomeradfafas1
2024-01-31 00:19:20 +08:00
{
2024-02-08 17:00:58 +08:00
[SqlSugar.SugarColumn(IsPrimaryKey = true)]
public int CustomerId { get; set; }
2024-01-31 00:19:20 +08:00
public string Name { get; set; }
2024-02-08 17:00:58 +08:00
[SqlSugar.SugarColumn(IsOwnsOne = true)]
2024-03-24 22:41:57 +08:00
public UnitAddressadfafa2221 Address { get; set; }
2024-01-31 00:19:20 +08:00
}
}