diff --git a/Yi.Abp.Net8/framework/Yi.Framework.SqlSugarCore.Abstractions/DbConnOptions.cs b/Yi.Abp.Net8/framework/Yi.Framework.SqlSugarCore.Abstractions/DbConnOptions.cs
index 0d2e1345..db6be5b3 100644
--- a/Yi.Abp.Net8/framework/Yi.Framework.SqlSugarCore.Abstractions/DbConnOptions.cs
+++ b/Yi.Abp.Net8/framework/Yi.Framework.SqlSugarCore.Abstractions/DbConnOptions.cs
@@ -19,7 +19,10 @@ namespace Yi.Framework.SqlSugarCore.Abstractions
///
public bool EnabledDbSeed { get; set; } = false;
-
+ ///
+ /// 开启驼峰转下划线
+ ///
+ public bool EnableUnderLine { get; set; } = false;
///
/// 开启codefirst
diff --git a/Yi.Abp.Net8/framework/Yi.Framework.SqlSugarCore/SqlSugarDbConnectionCreator.cs b/Yi.Abp.Net8/framework/Yi.Framework.SqlSugarCore/SqlSugarDbConnectionCreator.cs
index 1dd4a823..d62172df 100644
--- a/Yi.Abp.Net8/framework/Yi.Framework.SqlSugarCore/SqlSugarDbConnectionCreator.cs
+++ b/Yi.Abp.Net8/framework/Yi.Framework.SqlSugarCore/SqlSugarDbConnectionCreator.cs
@@ -64,6 +64,12 @@ namespace Yi.Framework.SqlSugarCore
//设置codefirst非空值判断
ConfigureExternalServices = new ConfigureExternalServices
{
+ // 处理表
+ EntityNameService = (type, entity) =>
+ {
+ if (dbConnOptions.EnableUnderLine && !entity.DbTableName.Contains('_'))
+ entity.DbTableName = UtilMethods.ToUnderLine(entity.DbTableName);// 驼峰转下划线
+ },
EntityService = (c, p) =>
{
if (new NullabilityInfoContext()
@@ -72,6 +78,9 @@ namespace Yi.Framework.SqlSugarCore
p.IsNullable = true;
}
+ if (dbConnOptions.EnableUnderLine && !p.IsIgnore && !p.DbColumnName.Contains('_'))
+ p.DbColumnName = UtilMethods.ToUnderLine(p.DbColumnName);// 驼峰转下划线
+
EntityService(c, p);
}
},
diff --git a/Yi.Abp.Net8/sample/Acme.BookStore.Web/appsettings.json b/Yi.Abp.Net8/sample/Acme.BookStore.Web/appsettings.json
index 5ee98247..fd1c336b 100644
--- a/Yi.Abp.Net8/sample/Acme.BookStore.Web/appsettings.json
+++ b/Yi.Abp.Net8/sample/Acme.BookStore.Web/appsettings.json
@@ -13,22 +13,24 @@
},
//数据库类型列表
- "DbList": [ "Sqlite", "Mysql", "Sqlserver", "Oracle" ],
+ "DbList": [ "Sqlite", "Mysql", "Sqlserver", "Oracle", "PostgreSQL" ],
- "DbConnOptions": {
- "Url": "DataSource=yi-abp-dev.db",
- "DbType": "Sqlite",
- "EnabledReadWrite": false,
- "EnabledCodeFirst": true,
- "EnabledSqlLog": true,
- "EnabledDbSeed": true
- //读写分离地址
- //"ReadUrl": [
- // "DataSource=[xxxx]", //Sqlite
- // "server=[xxxx];port=3306;database=[xxxx];user id=[xxxx];password=[xxxx]", //Mysql
- // "Data Source=[xxxx];Initial Catalog=[xxxx];User ID=[xxxx];password=[xxxx]" //Sqlserver
- //]
- },
+ "DbConnOptions": {
+ "Url": "DataSource=yi-abp-dev.db",
+ "DbType": "Sqlite",
+ "EnabledReadWrite": false,
+ "EnabledCodeFirst": true,
+ "EnabledSqlLog": true,
+ "EnabledDbSeed": true,
+ "EnableUnderLine": false // 启用驼峰转下划线
+ //读写分离地址
+ //"ReadUrl": [
+ // "DataSource=[xxxx]", //Sqlite
+ // "server=[xxxx];port=3306;database=[xxxx];user id=[xxxx];password=[xxxx]", //Mysql
+ // "Data Source=[xxxx];Initial Catalog=[xxxx];User ID=[xxxx];password=[xxxx]" //Sqlserver
+ // "HOST=[xxxx];PORT=5432;DATABASE=[xxxx];USERID=[xxxx];PASSWORD=[xxxx]" //PostgreSQL
+ //]
+ },
//鉴权
"JwtOptions": {
diff --git a/Yi.Abp.Net8/sample/Acme.BookStore.Web/yi-abp-dev.db b/Yi.Abp.Net8/sample/Acme.BookStore.Web/yi-abp-dev.db
deleted file mode 100644
index a74693eb..00000000
Binary files a/Yi.Abp.Net8/sample/Acme.BookStore.Web/yi-abp-dev.db and /dev/null differ
diff --git a/Yi.Abp.Net8/src/Yi.Abp.Web/appsettings.json b/Yi.Abp.Net8/src/Yi.Abp.Web/appsettings.json
index b5930132..9e9bec22 100644
--- a/Yi.Abp.Net8/src/Yi.Abp.Web/appsettings.json
+++ b/Yi.Abp.Net8/src/Yi.Abp.Web/appsettings.json
@@ -17,24 +17,26 @@
},
//数据库类型列表
- "DbList": [ "Sqlite", "Mysql", "Sqlserver", "Oracle" ],
+ "DbList": [ "Sqlite", "Mysql", "Sqlserver", "Oracle", "PostgreSQL" ],
- "DbConnOptions": {
- "Url": "DataSource=yi-abp-dev.db",
- "DbType": "Sqlite",
- "EnabledReadWrite": false,
- "EnabledCodeFirst": true,
- "EnabledSqlLog": true,
- "EnabledDbSeed": true,
- //SAAS多租户
- "EnabledSaasMultiTenancy": false
- //读写分离地址
- //"ReadUrl": [
- // "DataSource=[xxxx]", //Sqlite
- // "server=[xxxx];port=3306;database=[xxxx];user id=[xxxx];password=[xxxx]", //Mysql
- // "Data Source=[xxxx];Initial Catalog=[xxxx];User ID=[xxxx];password=[xxxx]" //Sqlserver
- //]
- },
+ "DbConnOptions": {
+ "Url": "DataSource=yi-abp-dev.db",
+ "DbType": "Sqlite",
+ "EnabledReadWrite": false,
+ "EnabledCodeFirst": true,
+ "EnabledSqlLog": true,
+ "EnabledDbSeed": true,
+ "EnableUnderLine": false, // 启用驼峰转下划线
+ //SAAS多租户
+ "EnabledSaasMultiTenancy": true
+ //读写分离地址
+ //"ReadUrl": [
+ // "DataSource=[xxxx]", //Sqlite
+ // "server=[xxxx];port=3306;database=[xxxx];user id=[xxxx];password=[xxxx]", //Mysql
+ // "Data Source=[xxxx];Initial Catalog=[xxxx];User ID=[xxxx];password=[xxxx]" //Sqlserver
+ // "HOST=[xxxx];PORT=5432;DATABASE=[xxxx];USERID=[xxxx];PASSWORD=[xxxx]" //PostgreSQL
+ //]
+ },
//redis使用freeesql参数在“FreeSqlOptions的ConnectionStringBuilder中”
"Redis": {
diff --git a/Yi.Abp.Net8/test/Yi.Abp.Test/appsettings.json b/Yi.Abp.Net8/test/Yi.Abp.Test/appsettings.json
index 5ee98247..fd1c336b 100644
--- a/Yi.Abp.Net8/test/Yi.Abp.Test/appsettings.json
+++ b/Yi.Abp.Net8/test/Yi.Abp.Test/appsettings.json
@@ -13,22 +13,24 @@
},
//数据库类型列表
- "DbList": [ "Sqlite", "Mysql", "Sqlserver", "Oracle" ],
+ "DbList": [ "Sqlite", "Mysql", "Sqlserver", "Oracle", "PostgreSQL" ],
- "DbConnOptions": {
- "Url": "DataSource=yi-abp-dev.db",
- "DbType": "Sqlite",
- "EnabledReadWrite": false,
- "EnabledCodeFirst": true,
- "EnabledSqlLog": true,
- "EnabledDbSeed": true
- //读写分离地址
- //"ReadUrl": [
- // "DataSource=[xxxx]", //Sqlite
- // "server=[xxxx];port=3306;database=[xxxx];user id=[xxxx];password=[xxxx]", //Mysql
- // "Data Source=[xxxx];Initial Catalog=[xxxx];User ID=[xxxx];password=[xxxx]" //Sqlserver
- //]
- },
+ "DbConnOptions": {
+ "Url": "DataSource=yi-abp-dev.db",
+ "DbType": "Sqlite",
+ "EnabledReadWrite": false,
+ "EnabledCodeFirst": true,
+ "EnabledSqlLog": true,
+ "EnabledDbSeed": true,
+ "EnableUnderLine": false // 启用驼峰转下划线
+ //读写分离地址
+ //"ReadUrl": [
+ // "DataSource=[xxxx]", //Sqlite
+ // "server=[xxxx];port=3306;database=[xxxx];user id=[xxxx];password=[xxxx]", //Mysql
+ // "Data Source=[xxxx];Initial Catalog=[xxxx];User ID=[xxxx];password=[xxxx]" //Sqlserver
+ // "HOST=[xxxx];PORT=5432;DATABASE=[xxxx];USERID=[xxxx];PASSWORD=[xxxx]" //PostgreSQL
+ //]
+ },
//鉴权
"JwtOptions": {
diff --git a/Yi.Abp.Net8/test/Yi.Framework.Rbac.Test/appsettings.json b/Yi.Abp.Net8/test/Yi.Framework.Rbac.Test/appsettings.json
index 11fcea31..462bc489 100644
--- a/Yi.Abp.Net8/test/Yi.Framework.Rbac.Test/appsettings.json
+++ b/Yi.Abp.Net8/test/Yi.Framework.Rbac.Test/appsettings.json
@@ -13,22 +13,24 @@
},
//数据库类型列表
- "DbList": [ "Sqlite", "Mysql", "Sqlserver", "Oracle" ],
+ "DbList": [ "Sqlite", "Mysql", "Sqlserver", "Oracle", "PostgreSQL" ],
- "DbConnOptions": {
- "Url": "DataSource=yi-rbac-test.db",
- "DbType": "Sqlite",
- "EnabledReadWrite": false,
- "EnabledCodeFirst": true,
- "EnabledSqlLog": true,
- "EnabledDbSeed": true
- //读写分离地址
- //"ReadUrl": [
- // "DataSource=[xxxx]", //Sqlite
- // "server=[xxxx];port=3306;database=[xxxx];user id=[xxxx];password=[xxxx]", //Mysql
- // "Data Source=[xxxx];Initial Catalog=[xxxx];User ID=[xxxx];password=[xxxx]" //Sqlserver
- //]
- },
+ "DbConnOptions": {
+ "Url": "DataSource=yi-rbac-test.db",
+ "DbType": "Sqlite",
+ "EnabledReadWrite": false,
+ "EnabledCodeFirst": true,
+ "EnabledSqlLog": true,
+ "EnabledDbSeed": true,
+ "EnableUnderLine": false // 启用驼峰转下划线
+ //读写分离地址
+ //"ReadUrl": [
+ // "DataSource=[xxxx]", //Sqlite
+ // "server=[xxxx];port=3306;database=[xxxx];user id=[xxxx];password=[xxxx]", //Mysql
+ // "Data Source=[xxxx];Initial Catalog=[xxxx];User ID=[xxxx];password=[xxxx]" //Sqlserver
+ // "HOST=[xxxx];PORT=5432;DATABASE=[xxxx];USERID=[xxxx];PASSWORD=[xxxx]" //PostgreSQL
+ //]
+ },
//鉴权
"JwtOptions": {