Synchronization code

This commit is contained in:
sunkaixuan
2022-09-26 23:43:10 +08:00
parent 07736f142a
commit 80b401dfd9
2 changed files with 62 additions and 0 deletions

View File

@@ -173,5 +173,36 @@ namespace SqlSugar
{
return string.Format("instr ({0},{1})", model.Args[0].MemberName, model.Args[1].MemberName);
}
public override string JsonField(MethodCallExpressionModel model)
{
var parameter = model.Args[0];
var parameter1 = model.Args[1];
//var parameter2 = model.Args[2];
//var parameter3= model.Args[3];
var result = GetJson(parameter.MemberName, parameter1.MemberValue, model.Args.Count() == 2);
if (model.Args.Count > 2)
{
result = GetJson(result, model.Args[2].MemberValue, model.Args.Count() == 3);
}
if (model.Args.Count > 3)
{
result = GetJson(result, model.Args[3].MemberValue, model.Args.Count() == 4);
}
if (model.Args.Count > 4)
{
result = GetJson(result, model.Args[4].MemberValue, model.Args.Count() == 5);
}
if (model.Args.Count > 5)
{
result = GetJson(result, model.Args[5].MemberValue, model.Args.Count() == 6);
}
return result;
}
private string GetJson(object memberName1, object memberName2, bool isLast)
{
return $"{memberName1}->\"$.{memberName2}\"";
}
}
}

View File

@@ -54,5 +54,36 @@ namespace SqlSugar
return string.Format("( {0}<>'' AND {0} IS NOT NULL )", parameter.MemberName);
}
}
public override string JsonField(MethodCallExpressionModel model)
{
var parameter = model.Args[0];
var parameter1 = model.Args[1];
//var parameter2 = model.Args[2];
//var parameter3= model.Args[3];
var result = GetJson(parameter.MemberName, parameter1.MemberName, model.Args.Count() == 2);
if (model.Args.Count > 2)
{
result = GetJson(result, model.Args[2].MemberName, model.Args.Count() == 3);
}
if (model.Args.Count > 3)
{
result = GetJson(result, model.Args[3].MemberName, model.Args.Count() == 4);
}
if (model.Args.Count > 4)
{
result = GetJson(result, model.Args[4].MemberName, model.Args.Count() == 5);
}
if (model.Args.Count > 5)
{
result = GetJson(result, model.Args[5].MemberName, model.Args.Count() == 6);
}
return result;
}
private string GetJson(object memberName1, object memberName2, bool isLast)
{
return $"JSON_VALUE({memberName1}, '$.'+"+memberName2+")";
}
}
}