mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-19 10:08:19 +08:00
MethodConst
This commit is contained in:
@@ -318,6 +318,12 @@ namespace OrmTest.Demo
|
|||||||
|
|
||||||
var getUnionAllList2 = db.UnionAll(db.Queryable<Student>(), db.Queryable<Student>()).ToList();
|
var getUnionAllList2 = db.UnionAll(db.Queryable<Student>(), db.Queryable<Student>()).ToList();
|
||||||
|
|
||||||
|
var getUnionAllList3= db.UnionAll(db.Queryable<Student>()
|
||||||
|
.Select(it => new Student { Id =SqlFunc.ToInt32(1) ,Name=SqlFunc.ToString("2"), SchoolId = Convert.ToInt32(3) })
|
||||||
|
, db.Queryable<Student>()
|
||||||
|
.Select(it => new Student { Id = SqlFunc.ToInt32(11) , Name = SqlFunc.ToString("22") , SchoolId=Convert.ToInt32(33)}))
|
||||||
|
.Select(it=>new Student() { Id=SqlFunc.ToInt32(111), Name = SqlFunc.ToString("222") }).ToList();
|
||||||
|
|
||||||
var test1 = db.Queryable<Student, School>((st, sc) => st.SchoolId == sc.Id).Where(st=>st.CreateTime>SqlFunc.GetDate()).Select((st, sc) => SqlFunc.ToInt64(sc.Id)).ToList();
|
var test1 = db.Queryable<Student, School>((st, sc) => st.SchoolId == sc.Id).Where(st=>st.CreateTime>SqlFunc.GetDate()).Select((st, sc) => SqlFunc.ToInt64(sc.Id)).ToList();
|
||||||
var test2 = db.Queryable<Student, School>((st, sc) => st.SchoolId == sc.Id)
|
var test2 = db.Queryable<Student, School>((st, sc) => st.SchoolId == sc.Id)
|
||||||
.Where(st =>
|
.Where(st =>
|
||||||
|
@@ -351,7 +351,7 @@ namespace SqlSugar
|
|||||||
var shortName1 = joinExpression.Parameters[0].Name;
|
var shortName1 = joinExpression.Parameters[0].Name;
|
||||||
var sqlObj1 = joinQueryable1.ToSql();
|
var sqlObj1 = joinQueryable1.ToSql();
|
||||||
string sql1 = sqlObj1.Key;
|
string sql1 = sqlObj1.Key;
|
||||||
UtilMethods.RepairReplicationParameters(ref sql1, sqlObj1.Value.ToArray(), 0);
|
UtilMethods.RepairReplicationParameters(ref sql1, sqlObj1.Value.ToArray(), 0,"Join");
|
||||||
queryable.QueryBuilder.EntityName = sqlBuilder.GetPackTable(sql1, shortName1); ;
|
queryable.QueryBuilder.EntityName = sqlBuilder.GetPackTable(sql1, shortName1); ;
|
||||||
queryable.QueryBuilder.Parameters.AddRange(sqlObj1.Value);
|
queryable.QueryBuilder.Parameters.AddRange(sqlObj1.Value);
|
||||||
|
|
||||||
@@ -359,7 +359,7 @@ namespace SqlSugar
|
|||||||
var shortName2 = joinExpression.Parameters[1].Name;
|
var shortName2 = joinExpression.Parameters[1].Name;
|
||||||
var sqlObj2 = joinQueryable2.ToSql();
|
var sqlObj2 = joinQueryable2.ToSql();
|
||||||
string sql2 = sqlObj2.Key;
|
string sql2 = sqlObj2.Key;
|
||||||
UtilMethods.RepairReplicationParameters(ref sql2, sqlObj2.Value.ToArray(), 1);
|
UtilMethods.RepairReplicationParameters(ref sql2, sqlObj2.Value.ToArray(), 1, "Join");
|
||||||
queryable.QueryBuilder.Parameters.AddRange(sqlObj2.Value);
|
queryable.QueryBuilder.Parameters.AddRange(sqlObj2.Value);
|
||||||
var exp = queryable.QueryBuilder.GetExpressionValue(joinExpression, ResolveExpressType.WhereMultiple);
|
var exp = queryable.QueryBuilder.GetExpressionValue(joinExpression, ResolveExpressType.WhereMultiple);
|
||||||
queryable.QueryBuilder.JoinQueryInfos.Add(new JoinQueryInfo() { JoinIndex = 0, JoinType = joinType, JoinWhere = exp.GetResultString(), TableName = sqlBuilder.GetPackTable(sql2, shortName2) });
|
queryable.QueryBuilder.JoinQueryInfos.Add(new JoinQueryInfo() { JoinIndex = 0, JoinType = joinType, JoinWhere = exp.GetResultString(), TableName = sqlBuilder.GetPackTable(sql2, shortName2) });
|
||||||
@@ -378,7 +378,7 @@ namespace SqlSugar
|
|||||||
{
|
{
|
||||||
var sqlObj = item.ToSql();
|
var sqlObj = item.ToSql();
|
||||||
string sql = sqlObj.Key;
|
string sql = sqlObj.Key;
|
||||||
UtilMethods.RepairReplicationParameters(ref sql, sqlObj.Value.ToArray(), i);
|
UtilMethods.RepairReplicationParameters(ref sql, sqlObj.Value.ToArray(), i, "UnionAll");
|
||||||
if (sqlObj.Value.HasValue())
|
if (sqlObj.Value.HasValue())
|
||||||
allItems.Add(new KeyValuePair<string, List<SugarParameter>>(sql, sqlObj.Value));
|
allItems.Add(new KeyValuePair<string, List<SugarParameter>>(sql, sqlObj.Value));
|
||||||
else
|
else
|
||||||
@@ -406,7 +406,7 @@ namespace SqlSugar
|
|||||||
{
|
{
|
||||||
var sqlObj = item.ToSql();
|
var sqlObj = item.ToSql();
|
||||||
string sql = sqlObj.Key;
|
string sql = sqlObj.Key;
|
||||||
UtilMethods.RepairReplicationParameters(ref sql, sqlObj.Value.ToArray(), i);
|
UtilMethods.RepairReplicationParameters(ref sql, sqlObj.Value.ToArray(), i, "Union");
|
||||||
if (sqlObj.Value.HasValue())
|
if (sqlObj.Value.HasValue())
|
||||||
allItems.Add(new KeyValuePair<string, List<SugarParameter>>(sql, sqlObj.Value));
|
allItems.Add(new KeyValuePair<string, List<SugarParameter>>(sql, sqlObj.Value));
|
||||||
else
|
else
|
||||||
|
@@ -68,7 +68,7 @@ namespace SqlSugar
|
|||||||
return (T)Convert.ChangeType(obj, typeof(T));
|
return (T)Convert.ChangeType(obj, typeof(T));
|
||||||
}
|
}
|
||||||
|
|
||||||
internal static void RepairReplicationParameters(ref string appendSql, SugarParameter[] parameters, int addIndex)
|
internal static void RepairReplicationParameters(ref string appendSql, SugarParameter[] parameters, int addIndex,string append=null)
|
||||||
{
|
{
|
||||||
if (appendSql.HasValue() && parameters.HasValue())
|
if (appendSql.HasValue() && parameters.HasValue())
|
||||||
{
|
{
|
||||||
@@ -76,7 +76,7 @@ namespace SqlSugar
|
|||||||
{
|
{
|
||||||
//Compatible with.NET CORE parameters case
|
//Compatible with.NET CORE parameters case
|
||||||
var name = parameter.ParameterName;
|
var name = parameter.ParameterName;
|
||||||
string newName = name + addIndex;
|
string newName = name +append+ addIndex;
|
||||||
appendSql = appendSql.Replace(name, newName);
|
appendSql = appendSql.Replace(name, newName);
|
||||||
parameter.ParameterName = newName;
|
parameter.ParameterName = newName;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user