From 73c1fd2d6aea361c1d8d1920020822a18d463665 Mon Sep 17 00:00:00 2001
From: 2881099 <2881099@qq.com>
Date: Sun, 21 Jan 2024 23:09:55 +0800
Subject: [PATCH] 111
---
FreeSql/FreeSql.xml | 98 +++++++++++++++++++
.../SelectProvider/Select1Provider.cs | 15 ++-
2 files changed, 112 insertions(+), 1 deletion(-)
diff --git a/FreeSql/FreeSql.xml b/FreeSql/FreeSql.xml
index 8adf6d85..8f213e5c 100644
--- a/FreeSql/FreeSql.xml
+++ b/FreeSql/FreeSql.xml
@@ -1104,6 +1104,82 @@
+
+
+ 动态创建实体类型
+
+
+
+
+ 配置Class
+
+ 类名
+ 类标记的特性[Table(Name = "xxx")] [Index(xxxx)]
+
+
+
+
+ 配置属性
+
+ 属性名称
+ 属性类型
+ 属性标记的特性-支持多个
+
+
+
+
+ 配置属性
+
+ 属性名称
+ 属性类型
+ 该属性是否重写父类属性
+ 属性标记的特性-支持多个
+
+
+
+
+ 配置属性
+
+ 属性名称
+ 属性类型
+ 该属性是否重写父类属性
+ 属性默认值
+ 属性标记的特性-支持多个
+
+
+
+
+ 配置父类
+
+ 父类类型
+
+
+
+
+ Override属性
+
+
+
+
+
+ Emit动态创建出Class - Type
+
+
+
+
+
+ 首字母小写
+
+
+
+
+
+
+ 首字母大写
+
+
+
+
获取实体的主键值,以 "*|_,[,_|*" 分割,当任意一个主键属性无值时,返回 null
@@ -5821,6 +5897,28 @@
请使用 fsql.InsertDict(dict) 方法插入字典数据
+
+
+ 动态构建Class Type
+
+
+
+
+
+ 根据字典,创建 table 对应的实体对象
+
+
+
+
+
+
+
+ 根据实体对象,创建 table 对应的字典
+
+
+
+
+
C#: that >= between && that <= and
diff --git a/FreeSql/Internal/CommonProvider/SelectProvider/Select1Provider.cs b/FreeSql/Internal/CommonProvider/SelectProvider/Select1Provider.cs
index 753de903..38589493 100644
--- a/FreeSql/Internal/CommonProvider/SelectProvider/Select1Provider.cs
+++ b/FreeSql/Internal/CommonProvider/SelectProvider/Select1Provider.cs
@@ -867,7 +867,20 @@ namespace FreeSql.Internal.CommonProvider
#endif
var list = listObj as List;
- if (list == null) return;
+ if (list == null)
+ {
+ if (typeof(T1) == typeof(object))
+ {
+ var ilist = listObj as IList;
+ if (ilist != null)
+ {
+ list = new List();
+ foreach (var iitem in ilist)
+ list.Add((T1)iitem);
+ }
+ }
+ if (list == null) return;
+ }
if (list.Any() == false) return;
if (tbref.Columns.Any() == false) return;