- 增加 "x1".First/FirstOrDefault 表达式函数解析;

This commit is contained in:
28810
2020-07-31 02:28:37 +08:00
parent f63a69c55c
commit af153295f8
33 changed files with 364 additions and 1 deletions

View File

@ -52,6 +52,19 @@ namespace FreeSql.Tests.MySqlConnectorExpression
list.Add(g.mysql.Select<TestEqualsGuid>().Where(a => a.IsDeleted.Equals(false)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -50,6 +50,19 @@ namespace FreeSql.Tests.Odbc.DamengExpression
list.Add(g.dameng.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -50,6 +50,19 @@ namespace FreeSql.Tests.Odbc.DefaultExpression
list.Add(g.odbc.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Empty()
{

View File

@ -50,6 +50,19 @@ namespace FreeSql.Tests.Odbc.KingbaseESExpression
list.Add(g.kingbaseES.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -52,6 +52,19 @@ namespace FreeSql.Tests.Odbc.MySqlExpression
list.Add(g.mysql.Select<TestEqualsGuid>().Where(a => a.IsDeleted.Equals(false)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -50,6 +50,19 @@ namespace FreeSql.Tests.Odbc.OracleExpression
list.Add(g.oracle.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -50,6 +50,19 @@ namespace FreeSql.Tests.Odbc.PostgreSQLExpression
list.Add(g.pgsql.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -51,6 +51,19 @@ namespace FreeSql.Tests.Odbc.SqlServerExpression
list.Add(g.sqlserver.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -50,6 +50,19 @@ namespace FreeSql.Tests.DamengExpression
list.Add(g.dameng.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -42,7 +42,7 @@ namespace FreeSql.Tests.DataContext.SqlServer
"TestTypeParentInfo23123", "xxdkdkdk1222", "xxx"};
foreach (var tempTable in tempTables)
{
DeleteTmpTable(dataTables, tempTable);
//DeleteTmpTable(dataTables, tempTable);
}
}

View File

@ -50,6 +50,19 @@ namespace FreeSql.Tests.MsAccessExpression
list.Add(g.msaccess.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -52,6 +52,19 @@ namespace FreeSql.Tests.MySqlExpression
list.Add(g.mysql.Select<TestEqualsGuid>().Where(a => a.IsDeleted.Equals(false)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -50,6 +50,19 @@ namespace FreeSql.Tests.OracleExpression
list.Add(g.oracle.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -50,6 +50,19 @@ namespace FreeSql.Tests.PostgreSQLExpression
list.Add(g.pgsql.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -50,6 +50,19 @@ namespace FreeSql.Tests.ShenTongExpression
list.Add(g.shentong.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -1,5 +1,6 @@
using FreeSql.DataAnnotations;
using FreeSql.Tests.DataContext.SqlServer;
using Microsoft.EntityFrameworkCore.Internal;
using System;
using System.Collections.Generic;
using System.Linq;
@ -65,6 +66,19 @@ namespace FreeSql.Tests.SqlServerExpression
list.Add(select.Where(a => a.TitleVarchar == "aaa").ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{

View File

@ -50,6 +50,19 @@ namespace FreeSql.Tests.SqliteExpression
list.Add(g.sqlite.Select<TestEqualsGuid>().Where(a => a.id.Equals(Guid.Empty)).ToList());
}
[Fact]
public void First()
{
Assert.Equal('x', select.First(a => "x1".First()));
Assert.Equal('z', select.First(a => "z1".First()));
}
[Fact]
public void FirstOrDefault()
{
Assert.Equal('x', select.First(a => "x1".FirstOrDefault()));
Assert.Equal('z', select.First(a => "z1".FirstOrDefault()));
}
[Fact]
public void Format()
{