This commit is contained in:
sunkaixuan 2025-06-06 19:02:17 +08:00
parent 7fe17e6784
commit 948a544c04

View File

@ -16,20 +16,19 @@ namespace OrmTest
{
var db = NewUnitTest.Db;
var sql1 =
db.Queryable<OrderJoinItemTemp>()
.Select(p => new StoreBrandOther
{
BrandName = string.IsNullOrEmpty(
SqlFunc.Subqueryable<Brand>().Where(n => n.Id == p.BrandId).Select(n => n.Name)
) ? "n" : "a"
}).ToSqlString();
Demo1(db);
if (!sql1.Contains(" [OrderJoinItemTemp] [p]"))
{
throw new Exception("unit test");
Demo2(db);
Demo3(db);
Demo4(db);
Demo5(db);
}
private static void Demo2(SqlSugarClient db)
{
var sql2 =
db.Queryable<OrderJoinItemTemp>()
.Select(p => new StoreBrandOther
@ -65,6 +64,73 @@ namespace OrmTest
throw new Exception("unit test");
}
}
private static void Demo1(SqlSugarClient db)
{
var sql1 =
db.Queryable<OrderJoinItemTemp>()
.Select(p => new StoreBrandOther
{
BrandName = string.IsNullOrEmpty(
SqlFunc.Subqueryable<Brand>().Where(n => n.Id == p.BrandId).Select(n => n.Name)
) ? "n" : "a"
}).ToSqlString();
if (!sql1.Contains(" [OrderJoinItemTemp] [p]"))
{
throw new Exception("unit test");
}
}
private static void Demo3(SqlSugarClient db)
{
var sql1 =
db.Queryable<OrderJoinItemTemp>()
.Select(p => new StoreBrandOther
{
BrandName = string.IsNullOrEmpty(
p.FoodName
) ? "n" : SqlFunc.Subqueryable<Brand>().Where(n => n.Id == p.BrandId).Select(n => n.Name)
}).ToSqlString();
if (!sql1.Contains(" [OrderJoinItemTemp] [p]"))
{
throw new Exception("unit test");
}
}
private static void Demo4(SqlSugarClient db)
{
var sql1 =
db.Queryable<OrderJoinItemTemp>()
.Select(p => new StoreBrandOther
{
BrandName = string.IsNullOrEmpty(
p.FoodName
) ? SqlFunc.Subqueryable<Brand>().Where(n => n.Id == p.BrandId).Select(n => n.Name):"a"
}).ToSqlString();
if (!sql1.Contains(" [OrderJoinItemTemp] [p]"))
{
throw new Exception("unit test");
}
}
private static void Demo5(SqlSugarClient db)
{
var sql1 =
db.Queryable<OrderJoinItemTemp>()
.Select(p => new StoreBrandOther
{
BrandName = string.IsNullOrEmpty(
p.FoodName
) ? SqlFunc.ToString("a"):SqlFunc.ToString("b")
}).ToSqlString();
if (sql1.Contains(" [OrderJoinItemTemp] [p]"))
{
throw new Exception("unit test");
}
}
}
///<summary>
///