SqlSugar/OrmTest/ExpressionTest/Field.cs

47 lines
1.4 KiB
C#
Raw Normal View History

2017-01-14 23:10:36 +08:00
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
{
2017-01-28 14:32:06 +08:00
public class Field:ExpTestBase
2017-01-14 23:10:36 +08:00
{
2017-01-28 14:32:06 +08:00
private Field() { }
public Field(int eachCount)
2017-01-14 23:10:36 +08:00
{
2017-01-28 14:32:06 +08:00
this.Count = eachCount;
2017-01-14 23:21:25 +08:00
}
2017-01-28 14:32:06 +08:00
internal void Init()
{
base.Begin();
for (int i = 0; i < base.Count; i++)
{
FieldSingle();
FieldMultiple();
}
base.End("Filed Test");
}
private void FieldSingle()
2017-01-14 23:21:25 +08:00
{
Expression<Func<Student, object>> exp = it => it.Name;
ExpressionContext expContext = new ExpressionContext(exp, ResolveExpressType.FieldSingle);
expContext.Resolve();
var selectorValue = expContext.Result.GetString();
2017-01-28 14:32:06 +08:00
Check(selectorValue, null, "Name", null, "FieldSingle");
2017-01-14 23:21:25 +08:00
}
2017-01-28 14:32:06 +08:00
private void FieldMultiple()
2017-01-14 23:21:25 +08:00
{
Expression<Func<Student, object>> exp = it => it.Name;
2017-01-14 23:10:36 +08:00
ExpressionContext expContext = new ExpressionContext(exp, ResolveExpressType.FieldMultiple);
expContext.Resolve();
var selectorValue = expContext.Result.GetString();
2017-01-28 14:32:06 +08:00
Check(selectorValue, null, "it.Name", null, "FieldMultiple");
2017-01-14 23:10:36 +08:00
}
}
}