From ef6d790dcc84584630afcafc5f133bee3ea2a766 Mon Sep 17 00:00:00 2001
From: 2881099 <2881099@qq.com>
Date: Fri, 23 Dec 2022 08:22:11 +0800
Subject: [PATCH] =?UTF-8?q?-=20=E5=A2=9E=E5=8A=A0=20FreeSqlBuilder=20UseQu?=
=?UTF-8?q?oteSqlName=20=E8=AE=BE=E7=BD=AE=E4=B8=8D=E4=BD=BF=E7=94=A8=20[]?=
=?UTF-8?q?=20``=20""=20=E9=99=90=E5=AE=9A=E7=AC=A6=E5=8F=B7=EF=BC=9B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Examples/base_entity/Program.cs | 2 +-
FreeSql.DbContext/FreeSql.DbContext.xml | 9 +++
FreeSql/FreeSql.xml | 67 +---------------
FreeSql/FreeSqlBuilder.cs | 18 +++--
FreeSql/FreeSqlBuilder_Obsolete.cs | 80 -------------------
FreeSql/Internal/CommonUtils.cs | 9 ++-
FreeSql/Internal/FreeSqlBuilderTypes.cs | 43 ----------
.../ClickHouseUtils.cs | 2 +-
.../FreeSql.Provider.Custom/CustomUtils.cs | 2 +-
.../MySql/CustomMySqlUtils.cs | 2 +-
.../Oracle/CustomOracleUtils.cs | 2 +-
.../PostgreSQL/CustomPostgreSQLUtils.cs | 2 +-
.../SqlServer/CustomSqlServerUtils.cs | 2 +-
.../FreeSql.Provider.Dameng/DamengUtils.cs | 2 +-
.../FirebirdUtils.cs | 2 +-
.../FreeSql.Provider.GBase/GBaseUtils.cs | 2 +-
.../KingbaseESUtils.cs | 2 +-
.../MsAccessUtils.cs | 2 +-
.../FreeSql.Provider.MySql/MySqlUtils.cs | 2 +-
.../MySqlConnectorUtils.cs | 2 +-
.../Dameng/OdbcDamengUtils.cs | 2 +-
.../Default/OdbcUtils.cs | 2 +-
.../KingbaseES/OdbcKingbaseESUtils.cs | 2 +-
.../MySql/OdbcMySqlUtils.cs | 2 +-
.../Oracle/OdbcOracleUtils.cs | 2 +-
.../PostgreSQL/OdbcPostgreSQLUtils.cs | 2 +-
.../SqlServer/OdbcSqlServerUtils.cs | 2 +-
.../FreeSql.Provider.Oracle/OracleUtils.cs | 2 +-
.../OracleOledbUtils.cs | 2 +-
.../PostgreSQLUtils.cs | 2 +-
.../ShenTongUtils.cs | 2 +-
.../SqlServerUtils.cs | 2 +-
.../FreeSql.Provider.Sqlite/SqliteUtils.cs | 2 +-
33 files changed, 56 insertions(+), 224 deletions(-)
delete mode 100644 FreeSql/FreeSqlBuilder_Obsolete.cs
diff --git a/Examples/base_entity/Program.cs b/Examples/base_entity/Program.cs
index 3dad8a00..322bc651 100644
--- a/Examples/base_entity/Program.cs
+++ b/Examples/base_entity/Program.cs
@@ -452,7 +452,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=2")
diff --git a/FreeSql.DbContext/FreeSql.DbContext.xml b/FreeSql.DbContext/FreeSql.DbContext.xml
index 594fbad3..537315e2 100644
--- a/FreeSql.DbContext/FreeSql.DbContext.xml
+++ b/FreeSql.DbContext/FreeSql.DbContext.xml
@@ -733,6 +733,15 @@
+
+
+ 根据Assembly扫描所有继承IEntityTypeConfiguration<T>的配置类
+
+
+
+
+
+
创建普通数据上下文档对象
diff --git a/FreeSql/FreeSql.xml b/FreeSql/FreeSql.xml
index 302c8ee7..ecf9a71d 100644
--- a/FreeSql/FreeSql.xml
+++ b/FreeSql/FreeSql.xml
@@ -1336,7 +1336,7 @@
数据库类型
数据库连接串
- 提供者的类型,一般不需要指定,如果一直提示“缺少 FreeSql 数据库实现包:FreeSql.Provider.MySql.dll,可前往 nuget 下载”的错误,说明反射获取不到类型,此时该参数可排上用场
+ 提供者的类型,一般不需要指定,如果一直提示“缺少 FreeSql 数据库实现包:FreeSql.Provider.MySql.dll,可前往 nuget 下载”的错误,说明反射获取不到类型,此时该参数可排上用场例如:typeof(FreeSql.SqlServer.SqlServerProvider<>)
@@ -1352,7 +1352,7 @@
数据库类型
数据库连接对象创建器
- 提供者的类型,一般不需要指定,如果一直提示“缺少 FreeSql 数据库实现包:FreeSql.Provider.MySql.dll,可前往 nuget 下载”的错误,说明反射获取不到类型,此时该参数可排上用场
+ 提供者的类型,一般不需要指定,如果一直提示“缺少 FreeSql 数据库实现包:FreeSql.Provider.MySql.dll,可前往 nuget 下载”的错误,说明反射获取不到类型,此时该参数可排上用场例如:typeof(FreeSql.SqlServer.SqlServerProvider<>)
@@ -1439,29 +1439,6 @@
-
-
- 转小写同步结构
-
- true:转小写, false:不转
-
-
-
-
- 转大写同步结构
-
- true:转大写, false:不转
-
-
-
-
- 自动转换实体属性名称 Entity Property -> Db Filed
-
- *不会覆盖 [Column] 特性设置的Name
-
-
-
-
指定事务对象
@@ -4174,46 +4151,6 @@
BigApple -> bigapple
-
-
- 不进行任何处理
-
-
-
-
- 将帕斯卡命名字符串转换为下划线分隔字符串
-
- BigApple -> Big_Apple
-
-
-
-
- 将帕斯卡命名字符串转换为下划线分隔字符串,且转换为全大写
-
- BigApple -> BIG_APPLE
-
-
-
-
- 将帕斯卡命名字符串转换为下划线分隔字符串,且转换为全小写
-
- BigApple -> big_apple
-
-
-
-
- 将字符串转换为大写
-
- BigApple -> BIGAPPLE
-
-
-
-
- 将字符串转换为小写
-
- BigApple -> bigapple
-
-
创建一个过滤器
diff --git a/FreeSql/FreeSqlBuilder.cs b/FreeSql/FreeSqlBuilder.cs
index 51e3b3dc..013bc061 100644
--- a/FreeSql/FreeSqlBuilder.cs
+++ b/FreeSql/FreeSqlBuilder.cs
@@ -18,15 +18,13 @@ namespace FreeSql
int[] _slaveWeights;
Func _connectionFactory;
bool _isAutoSyncStructure = false;
- bool _isSyncStructureToLower = false;
- bool _isSyncStructureToUpper = false;
bool _isConfigEntityFromDbFirst = false;
bool _isNoneCommandParameter = false;
bool _isGenerateCommandParameterWithLambda = false;
bool _isLazyLoading = false;
bool _isExitAutoDisposePool = true;
+ bool _isQuoteSqlName = true;
MappingPriorityType[] _mappingPriorityTypes;
- StringConvertType _entityPropertyConvertType = StringConvertType.None;
NameConvertType _nameConvertType = NameConvertType.None;
Action _aopCommandExecuting = null;
Action _aopCommandExecuted = null;
@@ -37,7 +35,7 @@ namespace FreeSql
///
/// 数据库类型
/// 数据库连接串
- /// 提供者的类型,一般不需要指定,如果一直提示“缺少 FreeSql 数据库实现包:FreeSql.Provider.MySql.dll,可前往 nuget 下载”的错误,说明反射获取不到类型,此时该参数可排上用场
+ /// 提供者的类型,一般不需要指定,如果一直提示“缺少 FreeSql 数据库实现包:FreeSql.Provider.MySql.dll,可前往 nuget 下载”的错误,说明反射获取不到类型,此时该参数可排上用场例如:typeof(FreeSql.SqlServer.SqlServerProvider<>)
///
public FreeSqlBuilder UseConnectionString(DataType dataType, string connectionString, Type providerType = null)
{
@@ -69,7 +67,7 @@ namespace FreeSql
///
/// 数据库类型
/// 数据库连接对象创建器
- /// 提供者的类型,一般不需要指定,如果一直提示“缺少 FreeSql 数据库实现包:FreeSql.Provider.MySql.dll,可前往 nuget 下载”的错误,说明反射获取不到类型,此时该参数可排上用场
+ /// 提供者的类型,一般不需要指定,如果一直提示“缺少 FreeSql 数据库实现包:FreeSql.Provider.MySql.dll,可前往 nuget 下载”的错误,说明反射获取不到类型,此时该参数可排上用场例如:typeof(FreeSql.SqlServer.SqlServerProvider<>)
///
public FreeSqlBuilder UseConnectionFactory(DataType dataType, Func connectionFactory, Type providerType = null)
{
@@ -161,6 +159,11 @@ namespace FreeSql
_nameConvertType = convertType;
return this;
}
+ public FreeSqlBuilder UseQuoteSqlName(bool value)
+ {
+ _isQuoteSqlName = value;
+ return this;
+ }
///
/// 指定映射优先级
@@ -337,8 +340,6 @@ namespace FreeSql
{
ret.CodeFirst.IsAutoSyncStructure = _isAutoSyncStructure;
- ret.CodeFirst.IsSyncStructureToLower = _isSyncStructureToLower;
- ret.CodeFirst.IsSyncStructureToUpper = _isSyncStructureToUpper;
ret.CodeFirst.IsConfigEntityFromDbFirst = _isConfigEntityFromDbFirst;
ret.CodeFirst.IsNoneCommandParameter = _isNoneCommandParameter;
ret.CodeFirst.IsGenerateCommandParameterWithLambda = _isGenerateCommandParameterWithLambda;
@@ -352,7 +353,6 @@ namespace FreeSql
if (_aopCommandExecuted != null)
ret.Aop.CommandAfter += new EventHandler((s, e) => _aopCommandExecuted?.Invoke(e.Command, e.Log));
- this.EntityPropertyNameConvert(ret);
//添加实体属性名全局AOP转换处理
if (_nameConvertType != NameConvertType.None)
{
@@ -517,6 +517,8 @@ namespace FreeSql
if (_slaveWeights != null)
for (var x = 0; x < _slaveWeights.Length; x++)
ret.Ado.SlavePools[x].Policy.Weight = _slaveWeights[x];
+
+ (ret.Select