This commit is contained in:
sunkaixuan
2017-05-31 15:42:21 +08:00
parent da24a13df7
commit e7d0d7f5b9
10 changed files with 89 additions and 89 deletions

View File

@@ -95,17 +95,17 @@ namespace OrmTest.Demo
var db = GetInstance(); var db = GetInstance();
var list = db.Queryable<Student>() var list = db.Queryable<Student>()
.GroupBy(it => it.Name) .GroupBy(it => it.Name)
.GroupBy(it => it.Id).Having(it => NBORM.AggregateAvg(it.Id) > 0) .GroupBy(it => it.Id).Having(it => SqlFunc.AggregateAvg(it.Id) > 0)
.Select(it => new { idAvg = NBORM.AggregateAvg(it.Id), name = it.Name }).ToList(); .Select(it => new { idAvg = SqlFunc.AggregateAvg(it.Id), name = it.Name }).ToList();
//SQL: //SQL:
//SELECT AVG([Id]) AS[idAvg], [Name] AS[name] FROM[Student] GROUP BY[Name],[Id] HAVING(AVG([Id]) > 0 ) //SELECT AVG([Id]) AS[idAvg], [Name] AS[name] FROM[Student] GROUP BY[Name],[Id] HAVING(AVG([Id]) > 0 )
//NBORM.AggregateSum(object thisValue) //SqlFunc.AggregateSum(object thisValue)
//NBORM.AggregateAvg<TResult>(TResult thisValue) //SqlFunc.AggregateAvg<TResult>(TResult thisValue)
//NBORM.AggregateMin(object thisValue) //SqlFunc.AggregateMin(object thisValue)
//NBORM.AggregateMax(object thisValue) //SqlFunc.AggregateMax(object thisValue)
//NBORM.AggregateCount(object thisValue) //SqlFunc.AggregateCount(object thisValue)
} }
private static void Ado() private static void Ado()
@@ -125,7 +125,7 @@ namespace OrmTest.Demo
var getAllNoLock = db.Queryable<Student>().With(SqlWith.NoLock).ToList(); var getAllNoLock = db.Queryable<Student>().With(SqlWith.NoLock).ToList();
var getByPrimaryKey = db.Queryable<Student>().InSingle(2); var getByPrimaryKey = db.Queryable<Student>().InSingle(2);
var getByWhere = db.Queryable<Student>().Where(it => it.Id == 1 || it.Name == "a").ToList(); var getByWhere = db.Queryable<Student>().Where(it => it.Id == 1 || it.Name == "a").ToList();
var getByFuns = db.Queryable<Student>().Where(it => NBORM.IsNullOrEmpty(it.Name)).ToList(); var getByFuns = db.Queryable<Student>().Where(it => SqlFunc.IsNullOrEmpty(it.Name)).ToList();
var sum = db.Queryable<Student>().Sum(it => it.Id); var sum = db.Queryable<Student>().Sum(it => it.Id);
var isAny = db.Queryable<Student>().Where(it => it.Id == -1).Any(); var isAny = db.Queryable<Student>().Where(it => it.Id == -1).Any();
var isAny2 = db.Queryable<Student>().Any(it => it.Id == -1); var isAny2 = db.Queryable<Student>().Any(it => it.Id == -1);
@@ -133,14 +133,14 @@ namespace OrmTest.Demo
var in1 = db.Queryable<Student>().In(it=>it.Id,new int[] { 1, 2, 3 }).ToList(); var in1 = db.Queryable<Student>().In(it=>it.Id,new int[] { 1, 2, 3 }).ToList();
var in2 = db.Queryable<Student>().In(new int[] { 1, 2, 3 }).ToList(); var in2 = db.Queryable<Student>().In(new int[] { 1, 2, 3 }).ToList();
int[] array = new int[] { 1, 2 }; int[] array = new int[] { 1, 2 };
var in3 = db.Queryable<Student>().Where(it=>NBORM.ContainsArray(array, it.Id)).ToList(); var in3 = db.Queryable<Student>().Where(it=>SqlFunc.ContainsArray(array, it.Id)).ToList();
var group = db.Queryable<Student>().GroupBy(it => it.Id) var group = db.Queryable<Student>().GroupBy(it => it.Id)
.Having(it => NBORM.AggregateCount(it.Id) > 10) .Having(it => SqlFunc.AggregateCount(it.Id) > 10)
.Select(it => new { id = NBORM.AggregateCount(it.Id) }).ToList(); .Select(it => new { id = SqlFunc.AggregateCount(it.Id) }).ToList();
var between = db.Queryable<Student>().Where(it => NBORM.Between(it.Id, 1, 20)).ToList(); var between = db.Queryable<Student>().Where(it => SqlFunc.Between(it.Id, 1, 20)).ToList();
var getTodayList = db.Queryable<Student>().Where(it => NBORM.DateIsSame(it.CreateTime, DateTime.Now)).ToList(); var getTodayList = db.Queryable<Student>().Where(it => SqlFunc.DateIsSame(it.CreateTime, DateTime.Now)).ToList();
} }
public static void Page() public static void Page()
@@ -218,41 +218,41 @@ namespace OrmTest.Demo
public static void Funs() public static void Funs()
{ {
var db = GetInstance(); var db = GetInstance();
var t1 = db.Queryable<Student>().Where(it => NBORM.ToLower(it.Name) == NBORM.ToLower("JACK")).ToList(); var t1 = db.Queryable<Student>().Where(it => SqlFunc.ToLower(it.Name) == SqlFunc.ToLower("JACK")).ToList();
//SELECT [Id],[SchoolId],[Name],[CreateTime] FROM [Student] WHERE ((LOWER([Name])) = (LOWER(@MethodConst0)) ) //SELECT [Id],[SchoolId],[Name],[CreateTime] FROM [Student] WHERE ((LOWER([Name])) = (LOWER(@MethodConst0)) )
/***More Functions***/ /***More Functions***/
//NBORM.IsNullOrEmpty(object thisValue) //SqlFunc.IsNullOrEmpty(object thisValue)
//NBORM.ToLower(object thisValue) //SqlFunc.ToLower(object thisValue)
//NBORM.string ToUpper(object thisValue) //SqlFunc.string ToUpper(object thisValue)
//NBORM.string Trim(object thisValue) //SqlFunc.string Trim(object thisValue)
//NBORM.bool Contains(string thisValue, string parameterValue) //SqlFunc.bool Contains(string thisValue, string parameterValue)
//NBORM.ContainsArray(object[] thisValue, string parameterValue) //SqlFunc.ContainsArray(object[] thisValue, string parameterValue)
//NBORM.StartsWith(object thisValue, string parameterValue) //SqlFunc.StartsWith(object thisValue, string parameterValue)
//NBORM.EndsWith(object thisValue, string parameterValue) //SqlFunc.EndsWith(object thisValue, string parameterValue)
//NBORM.Equals(object thisValue, object parameterValue) //SqlFunc.Equals(object thisValue, object parameterValue)
//NBORM.DateIsSame(DateTime date1, DateTime date2) //SqlFunc.DateIsSame(DateTime date1, DateTime date2)
//NBORM.DateIsSame(DateTime date1, DateTime date2, DateType dataType) //SqlFunc.DateIsSame(DateTime date1, DateTime date2, DateType dataType)
//NBORM.DateAdd(DateTime date, int addValue, DateType millisecond) //SqlFunc.DateAdd(DateTime date, int addValue, DateType millisecond)
//NBORM.DateAdd(DateTime date, int addValue) //SqlFunc.DateAdd(DateTime date, int addValue)
//NBORM.DateValue(DateTime date, DateType dataType) //SqlFunc.DateValue(DateTime date, DateType dataType)
//NBORM.Between(object value, object start, object end) //SqlFunc.Between(object value, object start, object end)
//NBORM.ToInt32(object value) //SqlFunc.ToInt32(object value)
//NBORM.ToInt64(object value) //SqlFunc.ToInt64(object value)
//NBORM.ToDate(object value) //SqlFunc.ToDate(object value)
//NBORM.ToString(object value) //SqlFunc.ToString(object value)
//NBORM.ToDecimal(object value) //SqlFunc.ToDecimal(object value)
//NBORM.ToGuid(object value) //SqlFunc.ToGuid(object value)
//NBORM.ToDouble(object value) //SqlFunc.ToDouble(object value)
//NBORM.ToBool(object value) //SqlFunc.ToBool(object value)
//NBORM.Substring(object value, int index, int length) //SqlFunc.Substring(object value, int index, int length)
//NBORM.Replace(object value, string oldChar, string newChar) //SqlFunc.Replace(object value, string oldChar, string newChar)
//NBORM.Length(object value) { throw new NotImplementedException(); } //SqlFunc.Length(object value) { throw new NotImplementedException(); }
//NBORM.AggregateSum(object thisValue) //SqlFunc.AggregateSum(object thisValue)
//NBORM.AggregateAvg<TResult>(TResult thisValue) //SqlFunc.AggregateAvg<TResult>(TResult thisValue)
//NBORM.AggregateMin(object thisValue) //SqlFunc.AggregateMin(object thisValue)
//NBORM.AggregateMax(object thisValue) //SqlFunc.AggregateMax(object thisValue)
//NBORM.AggregateCount(object thisValue) //SqlFunc.AggregateCount(object thisValue)
} }
public static void Select() public static void Select()
{ {

View File

@@ -59,7 +59,7 @@ namespace OrmTest.UnitTest
private void Length() private void Length()
{ {
Expression<Func<Student, bool>> exp = it => NBORM.Length("aaaa") >1; Expression<Func<Student, bool>> exp = it => SqlFunc.Length("aaaa") >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();
@@ -72,7 +72,7 @@ namespace OrmTest.UnitTest
private void Replace() private void Replace()
{ {
var x2 = Guid.NewGuid(); var x2 = Guid.NewGuid();
Expression<Func<Student, bool>> exp = it => NBORM.Replace("aaaa","a", "1") == "a"; Expression<Func<Student, bool>> exp = it => SqlFunc.Replace("aaaa","a", "1") == "a";
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();
@@ -85,7 +85,7 @@ namespace OrmTest.UnitTest
private void Substring() private void Substring()
{ {
var x2 = Guid.NewGuid(); var x2 = Guid.NewGuid();
Expression<Func<Student, bool>> exp = it => NBORM.Substring("aaaa",0,2) == "a"; Expression<Func<Student, bool>> exp = it => SqlFunc.Substring("aaaa",0,2) == "a";
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();
@@ -98,7 +98,7 @@ namespace OrmTest.UnitTest
private void ToBool() private void ToBool()
{ {
var x2 = Guid.NewGuid(); var x2 = Guid.NewGuid();
Expression<Func<Student, bool>> exp = it => NBORM.ToBool("true") == true; Expression<Func<Student, bool>> exp = it => SqlFunc.ToBool("true") == true;
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();
@@ -111,7 +111,7 @@ namespace OrmTest.UnitTest
private void ToDouble() private void ToDouble()
{ {
var x2 = Guid.NewGuid(); var x2 = Guid.NewGuid();
Expression<Func<Student, bool>> exp = it => NBORM.ToDouble("2") == 2; Expression<Func<Student, bool>> exp = it => SqlFunc.ToDouble("2") == 2;
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();
@@ -124,7 +124,7 @@ namespace OrmTest.UnitTest
private void ToGuid() private void ToGuid()
{ {
var x2 = Guid.NewGuid(); var x2 = Guid.NewGuid();
Expression<Func<Student, bool>> exp = it => NBORM.ToGuid("A94027A3-476E-478D-8228-F4054394B874") == x2; Expression<Func<Student, bool>> exp = it => SqlFunc.ToGuid("A94027A3-476E-478D-8228-F4054394B874") == 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();
@@ -137,7 +137,7 @@ namespace OrmTest.UnitTest
private void ToDecimal() private void ToDecimal()
{ {
var x2 = DateTime.Now; var x2 = DateTime.Now;
Expression<Func<Student, bool>> exp = it => NBORM.ToDecimal("22") == 1; Expression<Func<Student, bool>> exp = it => SqlFunc.ToDecimal("22") == 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();
@@ -150,7 +150,7 @@ namespace OrmTest.UnitTest
private void Tostring() private void Tostring()
{ {
var x2 = DateTime.Now; var x2 = DateTime.Now;
Expression<Func<Student, bool>> exp = it => NBORM.ToString("2015-1-1") == "a"; Expression<Func<Student, bool>> exp = it => SqlFunc.ToString("2015-1-1") == "a";
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();
@@ -163,7 +163,7 @@ namespace OrmTest.UnitTest
private void ToDate() private void ToDate()
{ {
var x2 = DateTime.Now; var x2 = DateTime.Now;
Expression<Func<Student, bool>> exp = it => NBORM.ToDate("2015-1-1") == x2; Expression<Func<Student, bool>> exp = it => SqlFunc.ToDate("2015-1-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();
@@ -176,7 +176,7 @@ namespace OrmTest.UnitTest
private void ToInt64() private void ToInt64()
{ {
var x2 = DateTime.Now; var x2 = DateTime.Now;
Expression<Func<Student, bool>> exp = it => NBORM.ToInt64("3") == 1; Expression<Func<Student, bool>> exp = it => SqlFunc.ToInt64("3") == 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();
@@ -189,7 +189,7 @@ namespace OrmTest.UnitTest
private void ToInt32() private void ToInt32()
{ {
var x2 = DateTime.Now; var x2 = DateTime.Now;
Expression<Func<Student, bool>> exp = it => NBORM.ToInt32("3")== 1; Expression<Func<Student, bool>> exp = it => SqlFunc.ToInt32("3")== 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();
@@ -202,7 +202,7 @@ 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)==1; Expression<Func<Student, bool>> exp = it => SqlFunc.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();
@@ -214,7 +214,7 @@ namespace OrmTest.UnitTest
private void StartsWith() private void StartsWith()
{ {
Expression<Func<Student, bool>> exp = it => NBORM.StartsWith(it.Name, "a"); Expression<Func<Student, bool>> exp = it => SqlFunc.StartsWith(it.Name, "a");
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();
@@ -225,7 +225,7 @@ namespace OrmTest.UnitTest
} }
private void EndsWith() private void EndsWith()
{ {
Expression<Func<Student, bool>> exp = it => NBORM.EndsWith(it.Name, "a"); Expression<Func<Student, bool>> exp = it => SqlFunc.EndsWith(it.Name, "a");
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();
@@ -236,7 +236,7 @@ namespace OrmTest.UnitTest
} }
private void Between() private void Between()
{ {
Expression<Func<Student, bool>> exp = it => NBORM.Between(it.Name,1, 2); Expression<Func<Student, bool>> exp = it => SqlFunc.Between(it.Name,1, 2);
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();
@@ -249,7 +249,7 @@ 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)==x2; Expression<Func<Student, bool>> exp = it => SqlFunc.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();
@@ -262,7 +262,7 @@ namespace OrmTest.UnitTest
private void DateAddDay() private void DateAddDay()
{ {
var x2 = DateTime.Now; var x2 = DateTime.Now;
Expression<Func<Student, bool>> exp = it => NBORM.DateAdd(x2, 1)==x2; Expression<Func<Student, bool>> exp = it => SqlFunc.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();
@@ -275,7 +275,7 @@ namespace OrmTest.UnitTest
private void DateIsSameByType() private void DateIsSameByType()
{ {
var x2 = DateTime.Now; var x2 = DateTime.Now;
Expression<Func<Student, bool>> exp = it => NBORM.DateIsSame(x2,x2, DateType.Millisecond); Expression<Func<Student, bool>> exp = it => SqlFunc.DateIsSame(x2,x2, DateType.Millisecond);
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();
@@ -288,7 +288,7 @@ namespace OrmTest.UnitTest
private void DateIsSameByDay() private void DateIsSameByDay()
{ {
var x2 = DateTime.Now; var x2 = DateTime.Now;
Expression<Func<Student, bool>> exp = it => NBORM.DateIsSame(x2,x2); Expression<Func<Student, bool>> exp = it => SqlFunc.DateIsSame(x2,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();
@@ -300,7 +300,7 @@ namespace OrmTest.UnitTest
private void Equals() private void Equals()
{ {
Expression<Func<Student, bool>> exp = it => NBORM.Equals(it.Name, "a"); Expression<Func<Student, bool>> exp = it => SqlFunc.Equals(it.Name, "a");
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();
@@ -310,7 +310,7 @@ namespace OrmTest.UnitTest
}, "Equals1 error"); }, "Equals1 error");
Expression<Func<Student, bool>> exp2 = it => NBORM.Equals("a",it.Name); Expression<Func<Student, bool>> exp2 = it => SqlFunc.Equals("a",it.Name);
SqlServerExpressionContext expContext2 = new SqlServerExpressionContext(); SqlServerExpressionContext expContext2 = new SqlServerExpressionContext();
expContext2.Resolve(exp2, ResolveExpressType.WhereSingle); expContext2.Resolve(exp2, ResolveExpressType.WhereSingle);
var value2 = expContext2.Result.GetString(); var value2 = expContext2.Result.GetString();
@@ -321,7 +321,7 @@ namespace OrmTest.UnitTest
} }
private void Equals_2() private void Equals_2()
{ {
Expression<Func<Student, bool>> exp = it => NBORM.Equals(it.Name, it.Name); Expression<Func<Student, bool>> exp = it => SqlFunc.Equals(it.Name, it.Name);
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();
@@ -331,7 +331,7 @@ namespace OrmTest.UnitTest
}, "Equals1 error"); }, "Equals1 error");
Expression<Func<Student, bool>> exp2 = it => NBORM.Equals("a", "a2"); Expression<Func<Student, bool>> exp2 = it => SqlFunc.Equals("a", "a2");
SqlServerExpressionContext expContext2 = new SqlServerExpressionContext(); SqlServerExpressionContext expContext2 = new SqlServerExpressionContext();
expContext2.Resolve(exp2, ResolveExpressType.WhereSingle); expContext2.Resolve(exp2, ResolveExpressType.WhereSingle);
var value2 = expContext2.Result.GetString(); var value2 = expContext2.Result.GetString();
@@ -343,7 +343,7 @@ namespace OrmTest.UnitTest
private void Contains() private void Contains()
{ {
Expression<Func<Student, bool>> exp = it => NBORM.Contains(it.Name, "a"); Expression<Func<Student, bool>> exp = it => SqlFunc.Contains(it.Name, "a");
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();
@@ -356,7 +356,7 @@ namespace OrmTest.UnitTest
private void ContainsArray() private void ContainsArray()
{ {
string[] array = new string[] { "1","2"}; string[] array = new string[] { "1","2"};
Expression<Func<Student, bool>> exp = it => NBORM.ContainsArray(array, it.Name); Expression<Func<Student, bool>> exp = it => SqlFunc.ContainsArray(array, it.Name);
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();
@@ -366,7 +366,7 @@ namespace OrmTest.UnitTest
private void Trim() private void Trim()
{ {
Expression<Func<Student, bool>> exp = it =>NBORM.Trim(" a")==it.Name; Expression<Func<Student, bool>> exp = it =>SqlFunc.Trim(" a")==it.Name;
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();
@@ -378,7 +378,7 @@ namespace OrmTest.UnitTest
private void ToUpper() private void ToUpper()
{ {
Expression<Func<Student, bool>> exp = it =>"a"== NBORM.ToUpper(it.Id) ; Expression<Func<Student, bool>> exp = it =>"a"== SqlFunc.ToUpper(it.Id) ;
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();
@@ -389,7 +389,7 @@ namespace OrmTest.UnitTest
} }
private void ToLower() private void ToLower()
{ {
Expression<Func<Student, bool>> exp = it => "a" == NBORM.ToLower(it.Id); Expression<Func<Student, bool>> exp = it => "a" == SqlFunc.ToLower(it.Id);
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();
@@ -402,7 +402,7 @@ namespace OrmTest.UnitTest
#region StringIsNullOrEmpty #region StringIsNullOrEmpty
private void StringIsNullOrEmpty() private void StringIsNullOrEmpty()
{ {
Expression<Func<Student, bool>> exp = it => it.Id > 2 || NBORM.IsNullOrEmpty(it.Id); ; Expression<Func<Student, bool>> exp = it => it.Id > 2 || SqlFunc.IsNullOrEmpty(it.Id); ;
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();
@@ -413,7 +413,7 @@ namespace OrmTest.UnitTest
} }
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 || SqlFunc.IsNullOrEmpty(true); ;
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();
@@ -426,7 +426,7 @@ namespace OrmTest.UnitTest
private void StringIsNullOrEmpty3() private void StringIsNullOrEmpty3()
{ {
int a = 1; int a = 1;
Expression<Func<Student, bool>> exp = it => 2 == it.Id || NBORM.IsNullOrEmpty(a); ; Expression<Func<Student, bool>> exp = it => 2 == it.Id || SqlFunc.IsNullOrEmpty(a); ;
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();
@@ -439,7 +439,7 @@ namespace OrmTest.UnitTest
private void StringIsNullOrEmpty4() private void StringIsNullOrEmpty4()
{ {
WhereConst.name = "xx"; WhereConst.name = "xx";
Expression<Func<Student, bool>> exp = it => 2 == it.Id || NBORM.IsNullOrEmpty(WhereConst.name); ; Expression<Func<Student, bool>> exp = it => 2 == it.Id || SqlFunc.IsNullOrEmpty(WhereConst.name); ;
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();

View File

@@ -49,7 +49,7 @@ namespace OrmTest.UnitTest
#region sql and parameters validate #region sql and parameters validate
var t1 = db.Queryable<Student, School>((st, sc) => new object[] { var t1 = db.Queryable<Student, School>((st, sc) => new object[] {
JoinType.Inner,st.Id==sc.Id JoinType.Inner,st.Id==sc.Id
}).GroupBy(st => st.Id).Having(st => NBORM.AggregateAvg(st.Id) == 1).Select(st => new { avgId = NBORM.AggregateAvg(st.Id) }).ToSql(); }).GroupBy(st => st.Id).Having(st => SqlFunc.AggregateAvg(st.Id) == 1).Select(st => new { avgId = SqlFunc.AggregateAvg(st.Id) }).ToSql();
base.Check("SELECT AVG([st].[ID]) AS [avgId] FROM [STudent] st Inner JOIN School sc ON ( [st].[ID] = [sc].[Id] ) GROUP BY [st].[ID] HAVING (AVG([st].[ID]) = @Const0 ) ", base.Check("SELECT AVG([st].[ID]) AS [avgId] FROM [STudent] st Inner JOIN School sc ON ( [st].[ID] = [sc].[Id] ) GROUP BY [st].[ID] HAVING (AVG([st].[ID]) = @Const0 ) ",
new List<SugarParameter>() { new List<SugarParameter>() {
new SugarParameter("@Const0",1) new SugarParameter("@Const0",1)

View File

@@ -102,7 +102,7 @@ namespace OrmTest.UnitTest
var t8 = db.Queryable<Student>() var t8 = db.Queryable<Student>()
.Where(it=>it.Id==1) .Where(it=>it.Id==1)
.WhereIF(true,it=> NBORM.Contains(it.Name,"a")) .WhereIF(true,it=> SqlFunc.Contains(it.Name,"a"))
.OrderBy(it => it.Id, OrderByType.Desc).Skip((pageIndex - 1) * pageSize).Take(pageSize * pageIndex).With(SqlWith.NoLock).ToSql(); .OrderBy(it => it.Id, OrderByType.Desc).Skip((pageIndex - 1) * pageSize).Take(pageSize * pageIndex).With(SqlWith.NoLock).ToSql();
base.Check(@"WITH PageTable AS( base.Check(@"WITH PageTable AS(
SELECT [ID],[SchoolId],[Name],[CreateTime] FROM [STudent] WITH(NOLOCK) WHERE ( [ID] = @Id0 ) AND ([Name] like '%'+@MethodConst1+'%') SELECT [ID],[SchoolId],[Name],[CreateTime] FROM [STudent] WITH(NOLOCK) WHERE ( [ID] = @Id0 ) AND ([Name] like '%'+@MethodConst1+'%')

View File

@@ -13,9 +13,9 @@ namespace SqlSugar
public const string Format2 = "o__o"; public const string Format2 = "o__o";
public const string Format3 = "("; public const string Format3 = "(";
public const string Format4 = ")"; public const string Format4 = ")";
public const string NBORMFULLNAME = "SqlSugar.NBORM"; public const string SqlFuncFullName = "SqlSugar.SqlFunc";
public const string METHODCONST = "MethodConst"; public const string MethodConst = "MethodConst";
public const string CONST = "Const"; public const string Const = "Const";
public readonly static Type MemberExpressionType = typeof(MemberExpression); public readonly static Type MemberExpressionType = typeof(MemberExpression);
public readonly static Type ConstantExpressionType = typeof(ConstantExpression); public readonly static Type ConstantExpressionType = typeof(ConstantExpression);
public readonly static Type StringType = typeof(string); public readonly static Type StringType = typeof(string);

View File

@@ -26,7 +26,7 @@ namespace SqlSugar
{ {
get get
{ {
return ExpressionConst.GetThrowMessage("Please use the following methods in the NBORM class, such as NBORM.IsNullOrEmpty (it.Name) for Lambda parsing", "拉姆达解析请使用 NBORM 类下面的方法,例如 NBORM.IsNullOrEmpty(it.Name)"); return ExpressionConst.GetThrowMessage("Please use the following methods in the SqlFunc class, such as SqlFunc.IsNullOrEmpty (it.Name) for Lambda parsing", "拉姆达解析请使用 SqlFunc 类下面的方法,例如 SqlFunc.IsNullOrEmpty(it.Name)");
} }
} }
} }

View File

@@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace SqlSugar namespace SqlSugar
{ {
public class NBORM public class SqlFunc
{ {
public static bool IsNullOrEmpty(object thisValue) { throw new NotImplementedException(); } public static bool IsNullOrEmpty(object thisValue) { throw new NotImplementedException(); }
public static string ToLower(object thisValue) { throw new NotImplementedException(); } public static string ToLower(object thisValue) { throw new NotImplementedException(); }

View File

@@ -154,7 +154,7 @@ namespace SqlSugar
} }
else else
{ {
var appendValue = this.Context.SqlParameterKeyWord + ExpressionConst.CONST + Context.ParameterIndex; var appendValue = this.Context.SqlParameterKeyWord + ExpressionConst.Const + Context.ParameterIndex;
Context.ParameterIndex++; Context.ParameterIndex++;
this.Context.Parameters.Add(new SugarParameter(appendValue, value)); this.Context.Parameters.Add(new SugarParameter(appendValue, value));
appendValue = string.Format(" {0} ", appendValue); appendValue = string.Format(" {0} ", appendValue);

View File

@@ -58,7 +58,7 @@ namespace SqlSugar
} }
if (methodCallExpressionArgs.IsMember == false) if (methodCallExpressionArgs.IsMember == false)
{ {
var parameterName = this.Context.SqlParameterKeyWord + ExpressionConst.METHODCONST + this.Context.ParameterIndex; var parameterName = this.Context.SqlParameterKeyWord + ExpressionConst.MethodConst + this.Context.ParameterIndex;
this.Context.ParameterIndex++; this.Context.ParameterIndex++;
methodCallExpressionArgs.MemberName = parameterName; methodCallExpressionArgs.MemberName = parameterName;
methodCallExpressionArgs.MemberValue = value; methodCallExpressionArgs.MemberValue = value;
@@ -95,7 +95,7 @@ namespace SqlSugar
} }
if (methodCallExpressionArgs.IsMember == false) if (methodCallExpressionArgs.IsMember == false)
{ {
var parameterName = this.Context.SqlParameterKeyWord + ExpressionConst.METHODCONST + this.Context.ParameterIndex; var parameterName = this.Context.SqlParameterKeyWord + ExpressionConst.MethodConst + this.Context.ParameterIndex;
this.Context.ParameterIndex++; this.Context.ParameterIndex++;
methodCallExpressionArgs.MemberName = parameterName; methodCallExpressionArgs.MemberName = parameterName;
methodCallExpressionArgs.MemberValue = value; methodCallExpressionArgs.MemberValue = value;
@@ -185,7 +185,7 @@ namespace SqlSugar
private void CheckMethod(MethodCallExpression expression) private void CheckMethod(MethodCallExpression expression)
{ {
Check.Exception(expression.Method.ReflectedType.FullName != ExpressionConst.NBORMFULLNAME, ExpressionErrorMessage.MethodError); Check.Exception(expression.Method.ReflectedType.FullName != ExpressionConst.SqlFuncFullName, ExpressionErrorMessage.MethodError);
} }
} }
} }

View File

@@ -124,7 +124,7 @@
<Compile Include="ExpressionsToSql\Common\MethodCallExpressionModel.cs" /> <Compile Include="ExpressionsToSql\Common\MethodCallExpressionModel.cs" />
<Compile Include="ExpressionsToSql\Method\DefaultDbMethod.cs" /> <Compile Include="ExpressionsToSql\Method\DefaultDbMethod.cs" />
<Compile Include="Realization\SqlServer\SqlBuilder\SqlServerExpressionContext.cs" /> <Compile Include="Realization\SqlServer\SqlBuilder\SqlServerExpressionContext.cs" />
<Compile Include="ExpressionsToSql\Method\NBORM.cs" /> <Compile Include="ExpressionsToSql\Method\SqlFunc.cs" />
<Compile Include="ExpressionsToSql\Common\BinaryExpressionInfo.cs" /> <Compile Include="ExpressionsToSql\Common\BinaryExpressionInfo.cs" />
<Compile Include="ExpressionsToSql\Common\ExpressionResult.cs" /> <Compile Include="ExpressionsToSql\Common\ExpressionResult.cs" />
<Compile Include="ExpressionsToSql\Common\ExpressionErrorMessage.cs" /> <Compile Include="ExpressionsToSql\Common\ExpressionErrorMessage.cs" />