- 修复 ExpressionTree 无法将 double -> 转成 int 的问题;

This commit is contained in:
2881099
2024-12-14 15:38:55 +08:00
parent af34ed845c
commit 13cfbf2566
5 changed files with 259 additions and 226 deletions

View File

@@ -1,5 +1,6 @@
using FreeSql;
using FreeSql.DataAnnotations;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
@@ -76,4 +77,7 @@ public class IdentityTable
public int id { get; set; }
public string name { get; set; }
[JsonProperty, Column(DbType = "datetime")]
public DateTime? create_time { get; set; }
}

View File

@@ -9,7 +9,6 @@ using FreeSql.Internal.Model;
using FreeSql.Odbc.Default;
using MessagePack;
using Microsoft.Data.SqlClient;
using MySqlConnector;
using NetTopologySuite.Geometries;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
@@ -577,7 +576,7 @@ namespace base_entity
.UseConnectionString(FreeSql.DataType.Firebird, @"database=localhost:D:\fbdata\EXAMPLES.fdb;user=sysdba;password=123456;max pool size=5")
//.UseQuoteSqlName(false)
//.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;min pool size=1;Max pool size=3;AllowLoadLocalInfile=true")
.UseConnectionString(FreeSql.DataType.MySql, "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;min pool size=1;Max pool size=3;AllowLoadLocalInfile=true")
//.UseConnectionString(FreeSql.DataType.SqlServer, "Data Source=.;Integrated Security=True;Initial Catalog=freesqlTest;Pooling=true;Max Pool Size=3;TrustServerCertificate=true")
//.UseAdoConnectionPool(false)
@@ -619,6 +618,12 @@ namespace base_entity
BaseEntity.Initialization(fsql, () => _asyncUow.Value);
#endregion
fsql.Delete<IdentityTable>().Where("1=1").ExecuteAffrows();
fsql.Insert(new IdentityTable { name = "name01", create_time = DateTime.Now }).ExecuteAffrows();
var itrt01 = fsql.Select<IdentityTable>().ToList();
var itrt02 = fsql.Select<IdentityTable>().ToList(a => a.create_time);
var itrt03 = fsql.Select<IdentityTable>().ToList(a => new { a.create_time });
fsql.CodeFirst.SyncStructure<Account>();
@@ -1413,9 +1418,9 @@ var sql11111 = fsql.Select<Class1111>()
//});
fsql.Insert(Enumerable.Range(0, 100).Select(a => new User1 { Id = Guid.NewGuid(), Nickname = $"nickname{a}", Username = $"username{a}", Description = $"desc{a}" }).ToArray()).ExecuteAffrows();
fsql.InsertOrUpdate<User1>()
.SetSource(fsql.Select<User1>().ToList())
.ExecuteMySqlBulkCopy();
//fsql.InsertOrUpdate<User1>()
// .SetSource(fsql.Select<User1>().ToList())
// .ExecuteMySqlBulkCopy();
var updatejoin01 = fsql.Update<User1>()
.Join(fsql.Select<UserGroup>(), (a, b) => a.GroupId == b.Id)

View File

@@ -30,7 +30,7 @@
<ProjectReference Include="..\..\Providers\FreeSql.Provider.ClickHouse\FreeSql.Provider.ClickHouse.csproj" />
<ProjectReference Include="..\..\Providers\FreeSql.Provider.Dameng\FreeSql.Provider.Dameng.csproj" />
<ProjectReference Include="..\..\Providers\FreeSql.Provider.Firebird\FreeSql.Provider.Firebird.csproj" />
<ProjectReference Include="..\..\Providers\FreeSql.Provider.MySqlConnector\FreeSql.Provider.MySqlConnector.csproj" />
<ProjectReference Include="..\..\Providers\FreeSql.Provider.MySql\FreeSql.Provider.MySql.csproj" />
<ProjectReference Include="..\..\Providers\FreeSql.Provider.Odbc\FreeSql.Provider.Odbc.csproj" />
<ProjectReference Include="..\..\Providers\FreeSql.Provider.Oracle\FreeSql.Provider.Oracle.csproj" />
<ProjectReference Include="..\..\Providers\FreeSql.Provider.PostgreSQL\FreeSql.Provider.PostgreSQL.csproj" />