mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-20 02:29:39 +08:00
-
This commit is contained in:
@@ -21,16 +21,20 @@ namespace OrmTest.ExpressionTest
|
|||||||
base.Begin();
|
base.Begin();
|
||||||
for (int i = 0; i < base.Count; i++)
|
for (int i = 0; i < base.Count; i++)
|
||||||
{
|
{
|
||||||
|
#region StringIsNullOrEmpty
|
||||||
StringIsNullOrEmpty();
|
StringIsNullOrEmpty();
|
||||||
StringIsNullOrEmpty2();
|
StringIsNullOrEmpty2();
|
||||||
StringIsNullOrEmpty3();
|
StringIsNullOrEmpty3();
|
||||||
StringIsNullOrEmpty4();
|
StringIsNullOrEmpty4();
|
||||||
|
ToUpper();
|
||||||
|
#endregion
|
||||||
}
|
}
|
||||||
base.End("Method Test");
|
base.End("Method Test");
|
||||||
}
|
}
|
||||||
private void StringIsNullOrEmpty()
|
|
||||||
|
private void ToUpper()
|
||||||
{
|
{
|
||||||
Expression<Func<Student, bool>> exp = it =>it.Id>2|| NBORM.IsNullOrEmpty(it.Id);;
|
Expression<Func<Student, bool>> exp = it =>"a"== NBORM.ToLower(it.Id) ;
|
||||||
SqlServerExpressionContext expContext = new SqlServerExpressionContext(exp, ResolveExpressType.WhereSingle);
|
SqlServerExpressionContext expContext = new SqlServerExpressionContext(exp, ResolveExpressType.WhereSingle);
|
||||||
expContext.Resolve();
|
expContext.Resolve();
|
||||||
var value = expContext.Result.GetString();
|
var value = expContext.Result.GetString();
|
||||||
@@ -40,9 +44,21 @@ namespace OrmTest.ExpressionTest
|
|||||||
}, "StringIsNullOrEmpty");
|
}, "StringIsNullOrEmpty");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region StringIsNullOrEmpty
|
||||||
|
private void StringIsNullOrEmpty()
|
||||||
|
{
|
||||||
|
Expression<Func<Student, bool>> exp = it => it.Id > 2 || NBORM.IsNullOrEmpty(it.Id); ;
|
||||||
|
SqlServerExpressionContext expContext = new SqlServerExpressionContext(exp, ResolveExpressType.WhereSingle);
|
||||||
|
expContext.Resolve();
|
||||||
|
var value = expContext.Result.GetString();
|
||||||
|
var pars = expContext.Parameters;
|
||||||
|
base.Check(value, pars, "(( Id > @Id0 ) OR ( Id='' OR Id IS NULL ))", new List<SugarParameter>() {
|
||||||
|
new SugarParameter("@Id0",2)
|
||||||
|
}, "StringIsNullOrEmpty");
|
||||||
|
}
|
||||||
private void StringIsNullOrEmpty2()
|
private void StringIsNullOrEmpty2()
|
||||||
{
|
{
|
||||||
Expression<Func<Student, bool>> exp = it => 2==it.Id || NBORM.IsNullOrEmpty(true); ;
|
Expression<Func<Student, bool>> exp = it => 2 == it.Id || NBORM.IsNullOrEmpty(true); ;
|
||||||
SqlServerExpressionContext expContext = new SqlServerExpressionContext(exp, ResolveExpressType.WhereSingle);
|
SqlServerExpressionContext expContext = new SqlServerExpressionContext(exp, ResolveExpressType.WhereSingle);
|
||||||
expContext.Resolve();
|
expContext.Resolve();
|
||||||
var value = expContext.Result.GetString();
|
var value = expContext.Result.GetString();
|
||||||
@@ -65,7 +81,6 @@ namespace OrmTest.ExpressionTest
|
|||||||
new SugarParameter("@Id0",2)
|
new SugarParameter("@Id0",2)
|
||||||
}, "StringIsNullOrEmpty3");
|
}, "StringIsNullOrEmpty3");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void StringIsNullOrEmpty4()
|
private void StringIsNullOrEmpty4()
|
||||||
{
|
{
|
||||||
WhereConst.name = "xx";
|
WhereConst.name = "xx";
|
||||||
@@ -79,6 +94,7 @@ namespace OrmTest.ExpressionTest
|
|||||||
new SugarParameter("@Id0",2)
|
new SugarParameter("@Id0",2)
|
||||||
}, "StringIsNullOrEmpty4");
|
}, "StringIsNullOrEmpty4");
|
||||||
}
|
}
|
||||||
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -12,5 +12,17 @@ namespace SqlSugar
|
|||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
return string.Format("( {0}='' OR {0} IS NULL )", parameter.Value);
|
return string.Format("( {0}='' OR {0} IS NULL )", parameter.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public object ToUpper(MethodCallExpressionModel model)
|
||||||
|
{
|
||||||
|
var parameter = model.Args[0];
|
||||||
|
return string.Format(" (UPPER({0})) ", parameter.Value);
|
||||||
|
}
|
||||||
|
|
||||||
|
public object ToLower(MethodCallExpressionModel model)
|
||||||
|
{
|
||||||
|
var parameter = model.Args[0];
|
||||||
|
return string.Format(" (LOWER({0})) ", parameter.Value);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -12,5 +12,7 @@ namespace SqlSugar
|
|||||||
public interface IDbMethods
|
public interface IDbMethods
|
||||||
{
|
{
|
||||||
string IsNullOrEmpty(MethodCallExpressionModel model);
|
string IsNullOrEmpty(MethodCallExpressionModel model);
|
||||||
|
object ToLower(MethodCallExpressionModel model);
|
||||||
|
object ToUpper(MethodCallExpressionModel model);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -67,6 +67,8 @@ namespace SqlSugar
|
|||||||
{
|
{
|
||||||
case "IsNullOrEmpty":
|
case "IsNullOrEmpty":
|
||||||
return this.Context.DbMehtods.IsNullOrEmpty(model);
|
return this.Context.DbMehtods.IsNullOrEmpty(model);
|
||||||
|
case "ToLower":
|
||||||
|
return this.Context.DbMehtods.ToLower(model);
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user