mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-19 18:22:23 +08:00
-
This commit is contained in:
@@ -48,14 +48,14 @@ namespace OrmTest.UnitTest
|
|||||||
private void DateValue()
|
private void DateValue()
|
||||||
{
|
{
|
||||||
var x2 = DateTime.Now;
|
var x2 = DateTime.Now;
|
||||||
Expression<Func<Student, bool>> exp = it => NBORM.DateValue(x2,DateType.Year);
|
Expression<Func<Student, bool>> exp = it => NBORM.DateValue(x2,DateType.Year)==1;
|
||||||
SqlServerExpressionContext expContext = new SqlServerExpressionContext();
|
SqlServerExpressionContext expContext = new SqlServerExpressionContext();
|
||||||
expContext.Resolve(exp, ResolveExpressType.WhereSingle);
|
expContext.Resolve(exp, ResolveExpressType.WhereSingle);
|
||||||
var value = expContext.Result.GetString();
|
var value = expContext.Result.GetString();
|
||||||
var pars = expContext.Parameters;
|
var pars = expContext.Parameters;
|
||||||
base.Check(value, pars, " (@MethodConst1(@MethodConst0)) ", new List<SugarParameter>() {
|
base.Check(value, pars, " ((@MethodConst1(@MethodConst0)) = @Const2 ) ", new List<SugarParameter>() {
|
||||||
new SugarParameter("@MethodConst0",x2),new SugarParameter("@MethodConst1",DateType.Year)
|
new SugarParameter("@MethodConst0",x2),new SugarParameter("@MethodConst1",DateType.Year),new SugarParameter("@Const2",1)
|
||||||
}, "StartsWith");
|
}, "DateValue");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void StartsWith()
|
private void StartsWith()
|
||||||
@@ -95,26 +95,26 @@ namespace OrmTest.UnitTest
|
|||||||
private void DateAddByType()
|
private void DateAddByType()
|
||||||
{
|
{
|
||||||
var x2 = DateTime.Now;
|
var x2 = DateTime.Now;
|
||||||
Expression<Func<Student, bool>> exp = it => NBORM.DateAdd(x2, 11, DateType.Millisecond);
|
Expression<Func<Student, bool>> exp = it => NBORM.DateAdd(x2, 11, DateType.Millisecond)==x2;
|
||||||
SqlServerExpressionContext expContext = new SqlServerExpressionContext();
|
SqlServerExpressionContext expContext = new SqlServerExpressionContext();
|
||||||
expContext.Resolve(exp, ResolveExpressType.WhereSingle);
|
expContext.Resolve(exp, ResolveExpressType.WhereSingle);
|
||||||
var value = expContext.Result.GetString();
|
var value = expContext.Result.GetString();
|
||||||
var pars = expContext.Parameters;
|
var pars = expContext.Parameters;
|
||||||
base.Check(value, pars, " (DATEADD(@MethodConst2,@MethodConst1,@MethodConst0)) ", new List<SugarParameter>() {
|
base.Check(value, pars, "((DATEADD(@MethodConst2,@MethodConst1,@MethodConst0)) = @Const3 )", new List<SugarParameter>() {
|
||||||
new SugarParameter("@MethodConst0",x2),new SugarParameter("@MethodConst1",11),
|
new SugarParameter("@MethodConst0",x2),new SugarParameter("@MethodConst1",11),new SugarParameter("@Const3",x2),
|
||||||
new SugarParameter("@MethodConst2",DateType.Millisecond)
|
new SugarParameter("@MethodConst2",DateType.Millisecond)
|
||||||
}, "DateAddByType");
|
}, "DateAddByType");
|
||||||
}
|
}
|
||||||
private void DateAddDay()
|
private void DateAddDay()
|
||||||
{
|
{
|
||||||
var x2 = DateTime.Now;
|
var x2 = DateTime.Now;
|
||||||
Expression<Func<Student, bool>> exp = it => NBORM.DateAdd(x2, 1);
|
Expression<Func<Student, bool>> exp = it => NBORM.DateAdd(x2, 1)==x2;
|
||||||
SqlServerExpressionContext expContext = new SqlServerExpressionContext();
|
SqlServerExpressionContext expContext = new SqlServerExpressionContext();
|
||||||
expContext.Resolve(exp, ResolveExpressType.WhereSingle);
|
expContext.Resolve(exp, ResolveExpressType.WhereSingle);
|
||||||
var value = expContext.Result.GetString();
|
var value = expContext.Result.GetString();
|
||||||
var pars = expContext.Parameters;
|
var pars = expContext.Parameters;
|
||||||
base.Check(value, pars, " (DATEADD(day,@MethodConst1,@MethodConst0)) ", new List<SugarParameter>() {
|
base.Check(value, pars, "((DATEADD(day,@MethodConst1,@MethodConst0)) = @Const2 )", new List<SugarParameter>() {
|
||||||
new SugarParameter("@MethodConst0",x2),new SugarParameter("@MethodConst1",1)
|
new SugarParameter("@MethodConst0",x2),new SugarParameter("@MethodConst1",1),new SugarParameter("@Const2",x2)
|
||||||
}, "DateIsSameByType");
|
}, "DateIsSameByType");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -13,46 +13,46 @@ namespace SqlSugar
|
|||||||
return string.Format("( {0}='' OR {0} IS NULL )", parameter.Value);
|
return string.Format("( {0}='' OR {0} IS NULL )", parameter.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual object ToUpper(MethodCallExpressionModel model)
|
public virtual string ToUpper(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
return string.Format(" (UPPER({0})) ", parameter.Value);
|
return string.Format(" (UPPER({0})) ", parameter.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual object ToLower(MethodCallExpressionModel model)
|
public virtual string ToLower(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
return string.Format(" (LOWER({0})) ", parameter.Value);
|
return string.Format(" (LOWER({0})) ", parameter.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual object Trim(MethodCallExpressionModel model)
|
public virtual string Trim(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
return string.Format(" (rtrim(ltrim({0}))) ", parameter.Value);
|
return string.Format(" (rtrim(ltrim({0}))) ", parameter.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual object Contains(MethodCallExpressionModel model)
|
public virtual string Contains(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
var parameter2 = model.Args[1];
|
var parameter2 = model.Args[1];
|
||||||
return string.Format(" ({0} like '%'+{1}+'%') ", parameter.Value, parameter2.Value);
|
return string.Format(" ({0} like '%'+{1}+'%') ", parameter.Value, parameter2.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public object Equals(MethodCallExpressionModel model)
|
public string Equals(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
var parameter2 = model.Args[1];
|
var parameter2 = model.Args[1];
|
||||||
return string.Format(" ({0} = {1}) ", parameter.Value, parameter2.Value); ;
|
return string.Format(" ({0} = {1}) ", parameter.Value, parameter2.Value); ;
|
||||||
}
|
}
|
||||||
|
|
||||||
public object DateIsSameDay(MethodCallExpressionModel model)
|
public string DateIsSameDay(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
var parameter2 = model.Args[1];
|
var parameter2 = model.Args[1];
|
||||||
return string.Format(" (DATEDIFF(day,{0},{1})=0) ", parameter.Value, parameter2.Value); ;
|
return string.Format(" (DATEDIFF(day,{0},{1})=0) ", parameter.Value, parameter2.Value); ;
|
||||||
}
|
}
|
||||||
|
|
||||||
public object DateIsSameByType(MethodCallExpressionModel model)
|
public string DateIsSameByType(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
var parameter2 = model.Args[1];
|
var parameter2 = model.Args[1];
|
||||||
@@ -60,7 +60,7 @@ namespace SqlSugar
|
|||||||
return string.Format(" (DATEDIFF({2},{0},{1})=0) ", parameter.Value, parameter2.Value, parameter3.Value);
|
return string.Format(" (DATEDIFF({2},{0},{1})=0) ", parameter.Value, parameter2.Value, parameter3.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public object DateAddByType(MethodCallExpressionModel model)
|
public string DateAddByType(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
var parameter2 = model.Args[1];
|
var parameter2 = model.Args[1];
|
||||||
@@ -68,14 +68,14 @@ namespace SqlSugar
|
|||||||
return string.Format(" (DATEADD({2},{1},{0})) ", parameter.Value, parameter2.Value, parameter3.Value);
|
return string.Format(" (DATEADD({2},{1},{0})) ", parameter.Value, parameter2.Value, parameter3.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public object DateAddDay(MethodCallExpressionModel model)
|
public string DateAddDay(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
var parameter2 = model.Args[1];
|
var parameter2 = model.Args[1];
|
||||||
return string.Format(" (DATEADD(day,{1},{0})) ", parameter.Value, parameter2.Value);
|
return string.Format(" (DATEADD(day,{1},{0})) ", parameter.Value, parameter2.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public object Between(MethodCallExpressionModel model)
|
public string Between(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
var parameter1 = model.Args[1];
|
var parameter1 = model.Args[1];
|
||||||
@@ -83,21 +83,21 @@ namespace SqlSugar
|
|||||||
return string.Format(" ({0} BETWEEN {1} AND {2}) ", parameter.Value, parameter1.Value, parameter2.Value);
|
return string.Format(" ({0} BETWEEN {1} AND {2}) ", parameter.Value, parameter1.Value, parameter2.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public object StartsWith(MethodCallExpressionModel model)
|
public string StartsWith(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
var parameter2 = model.Args[1];
|
var parameter2 = model.Args[1];
|
||||||
return string.Format(" ({0} like {1}+'%') ", parameter.Value, parameter2.Value);
|
return string.Format(" ({0} like {1}+'%') ", parameter.Value, parameter2.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public object EndsWith(MethodCallExpressionModel model)
|
public string EndsWith(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
var parameter2 = model.Args[1];
|
var parameter2 = model.Args[1];
|
||||||
return string.Format(" ({0} like '%'+{1}) ", parameter.Value, parameter2.Value);
|
return string.Format(" ({0} like '%'+{1}) ", parameter.Value, parameter2.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public object DateValue(MethodCallExpressionModel model)
|
public string DateValue(MethodCallExpressionModel model)
|
||||||
{
|
{
|
||||||
var parameter = model.Args[0];
|
var parameter = model.Args[0];
|
||||||
var parameter2 = model.Args[1];
|
var parameter2 = model.Args[1];
|
||||||
|
@@ -12,18 +12,18 @@ namespace SqlSugar
|
|||||||
public interface IDbMethods
|
public interface IDbMethods
|
||||||
{
|
{
|
||||||
string IsNullOrEmpty(MethodCallExpressionModel model);
|
string IsNullOrEmpty(MethodCallExpressionModel model);
|
||||||
object ToLower(MethodCallExpressionModel model);
|
string ToLower(MethodCallExpressionModel model);
|
||||||
object ToUpper(MethodCallExpressionModel model);
|
string ToUpper(MethodCallExpressionModel model);
|
||||||
object Trim(MethodCallExpressionModel model);
|
string Trim(MethodCallExpressionModel model);
|
||||||
object Contains(MethodCallExpressionModel model);
|
string Contains(MethodCallExpressionModel model);
|
||||||
object Equals(MethodCallExpressionModel model);
|
string Equals(MethodCallExpressionModel model);
|
||||||
object DateIsSameDay(MethodCallExpressionModel model);
|
string DateIsSameDay(MethodCallExpressionModel model);
|
||||||
object DateIsSameByType(MethodCallExpressionModel model);
|
string DateIsSameByType(MethodCallExpressionModel model);
|
||||||
object DateAddByType(MethodCallExpressionModel model);
|
string DateAddByType(MethodCallExpressionModel model);
|
||||||
object DateValue(MethodCallExpressionModel model);
|
string DateValue(MethodCallExpressionModel model);
|
||||||
object DateAddDay(MethodCallExpressionModel model);
|
string DateAddDay(MethodCallExpressionModel model);
|
||||||
object Between(MethodCallExpressionModel model);
|
string Between(MethodCallExpressionModel model);
|
||||||
object StartsWith(MethodCallExpressionModel model);
|
string StartsWith(MethodCallExpressionModel model);
|
||||||
object EndsWith(MethodCallExpressionModel model);
|
string EndsWith(MethodCallExpressionModel model);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user