From ed1a68a927afc9fae584e742ad7c2bf77a08c2c3 Mon Sep 17 00:00:00 2001 From: 28810 <28810@YEXIANGQIN> Date: Thu, 4 Apr 2019 16:59:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20pgsql=20Enum=20=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=20formatSql=20bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FreeSql.Tests/UnitTest1.cs | 3 ++- FreeSql/Internal/UtilsExpressionTree.cs | 6 +++--- FreeSql/PostgreSQL/PostgreSQLAdo/PostgreSQLAdo.cs | 4 +++- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/FreeSql.Tests/UnitTest1.cs b/FreeSql.Tests/UnitTest1.cs index 287c2182..eb7e387f 100644 --- a/FreeSql.Tests/UnitTest1.cs +++ b/FreeSql.Tests/UnitTest1.cs @@ -148,7 +148,8 @@ namespace FreeSql.Tests { var list111 = select.From((s, b, c) => s .InnerJoin(a => a.TypeGuid == b.Guid) .LeftJoin(a => c.Id == b.ParentId) - .Where(a => b.Name != "xxx")).ToList((a, b, c) => new { + .Where(a => b.Name != "xxx")) + .ToList((a, b, c) => new { a.Id, a.Title, a.Type, diff --git a/FreeSql/Internal/UtilsExpressionTree.cs b/FreeSql/Internal/UtilsExpressionTree.cs index 26ea8e08..28ff4b40 100644 --- a/FreeSql/Internal/UtilsExpressionTree.cs +++ b/FreeSql/Internal/UtilsExpressionTree.cs @@ -385,7 +385,7 @@ namespace FreeSql.Internal { } if (isLazy) { - cscode.Append(" private bool __lazy__").Append(pnv.Name).AppendLine(" = false;") + cscode.Append(" public bool __lazy__").Append(pnv.Name).AppendLine(" = false;") .Append(" public override ").Append(propTypeName).Append(" ").Append(pnv.Name).AppendLine(" {"); if (vp.Item2) { //get 重写 cscode.Append(" get {\r\n") @@ -460,7 +460,7 @@ namespace FreeSql.Internal { } if (isLazy) { - cscode.Append(" private bool __lazy__").Append(pnv.Name).AppendLine(" = false;") + cscode.Append(" public bool __lazy__").Append(pnv.Name).AppendLine(" = false;") .Append(" public override ").Append(propTypeName).Append(" ").Append(pnv.Name).AppendLine(" {"); if (vp.Item2) { //get 重写 cscode.Append(" get {\r\n") @@ -550,7 +550,7 @@ namespace FreeSql.Internal { } if (isLazy) { - cscode.Append(" private bool __lazy__").Append(pnv.Name).AppendLine(" = false;") + cscode.Append(" public bool __lazy__").Append(pnv.Name).AppendLine(" = false;") .Append(" public override ").Append(propTypeName).Append(" ").Append(pnv.Name).AppendLine(" {"); if (vp.Item2) { //get 重写 cscode.Append(" get {\r\n") diff --git a/FreeSql/PostgreSQL/PostgreSQLAdo/PostgreSQLAdo.cs b/FreeSql/PostgreSQL/PostgreSQLAdo/PostgreSQLAdo.cs index acafafc0..80540292 100644 --- a/FreeSql/PostgreSQL/PostgreSQLAdo/PostgreSQLAdo.cs +++ b/FreeSql/PostgreSQL/PostgreSQLAdo/PostgreSQLAdo.cs @@ -30,8 +30,10 @@ namespace FreeSql.PostgreSQL { if (param == null) return "NULL"; if (param is bool || param is bool?) return (bool)param ? "'t'" : "'f'"; - else if (param is string || param is char || param is Enum) + else if (param is string || param is char) return string.Concat("'", param.ToString().Replace("'", "''"), "'"); + else if (param is Enum) + return ((Enum)param).ToInt64(); else if (decimal.TryParse(string.Concat(param), out var trydec)) return param; else if (param is DateTime || param is DateTime?)