This commit is contained in:
sunkaixuan
2017-01-14 23:10:36 +08:00
parent 508246eb4e
commit 92e0699c47
22 changed files with 94 additions and 31 deletions

View File

@@ -0,0 +1,22 @@
using OrmTest.Models;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
namespace OrmTest.ExpressionTest
{
public class Field
{
internal static void Init()
{
Expression<Func<Student, object>> exp = it=>it.Name;
ExpressionContext expContext = new ExpressionContext(exp, ResolveExpressType.FieldMultiple);
expContext.Resolve();
var selectorValue = expContext.Result.GetString();
}
}
}

View File

@@ -14,7 +14,7 @@ namespace OrmTest.ExpressionTest
internal static void Init()
{
DateTime b = DateTime.Now;
int count = 10000;
int count = 1;
for (int i = 0; i < count; i++)
{
single();
@@ -29,8 +29,7 @@ namespace OrmTest.ExpressionTest
private static void Multiple()
{
Expression<Func<Student,School, object>> exp = (it,school) => new Student() { Name = "a", Id = it.Id, SchoolId = school.Id };
ExpressionContext expContext = new ExpressionContext(exp, ResolveExpressType.WhereSingle);
expContext.ResolveType = ResolveExpressType.SelectMultiple;
ExpressionContext expContext = new ExpressionContext(exp, ResolveExpressType.SelectMultiple);
expContext.Resolve();
var selectorValue = expContext.Result.GetString();
var pars = expContext.Parameters;
@@ -38,8 +37,7 @@ namespace OrmTest.ExpressionTest
private static void MultipleDynamic()
{
Expression<Func<Student, School, object>> exp = (it, school) => new{ Name = "a", Id = it.Id, SchoolId = school.Id };
ExpressionContext expContext = new ExpressionContext(exp, ResolveExpressType.WhereSingle);
expContext.ResolveType = ResolveExpressType.SelectMultiple;
ExpressionContext expContext = new ExpressionContext(exp, ResolveExpressType.SelectMultiple);
expContext.Resolve();
var selectorValue = expContext.Result.GetString();
var pars = expContext.Parameters;
@@ -48,8 +46,7 @@ namespace OrmTest.ExpressionTest
{
int p = 1;
Expression<Func<Student, object>> exp = it => new Student() { Name = "a", Id = it.Id, SchoolId = p };
ExpressionContext expContext = new ExpressionContext(exp, ResolveExpressType.WhereSingle);
expContext.ResolveType = ResolveExpressType.SelectSingle;
ExpressionContext expContext = new ExpressionContext(exp, ResolveExpressType.SelectSingle);
expContext.Resolve();
var selectorValue = expContext.Result.GetString();
var pars = expContext.Parameters;
@@ -59,8 +56,7 @@ namespace OrmTest.ExpressionTest
{
string a = "a";
Expression<Func<Student, object>> exp = it => new { x = it.Id, shoolid = 1, name = a };
ExpressionContext expContext = new ExpressionContext(exp, ResolveExpressType.WhereSingle);
expContext.ResolveType = ResolveExpressType.SelectSingle;
ExpressionContext expContext = new ExpressionContext(exp, ResolveExpressType.SelectSingle);
expContext.Resolve();
var selectorValue = expContext.Result.GetString();
var pars = expContext.Parameters;

View File

@@ -43,6 +43,7 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ExpressionTest\Field.cs" />
<Compile Include="ExpressionTest\Select.cs" />
<Compile Include="ExpressionTest\Where.cs" />
<Compile Include="Models\School.cs" />

View File

@@ -24,6 +24,7 @@ namespace OrmTest
OrmTest.ExpressionTest.Select.Init();
OrmTest.ExpressionTest.Field.Init();
Program.id = "xx";

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.