From c33cd5d19fb07ddfaa69442204e9a34729b58317 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Tue, 6 Sep 2022 13:26:11 +0800 Subject: [PATCH] Update .net core project --- .../QueryableProvider/NavigatManager.cs | 3 ++- .../DbMaintenance/SqlServerDbMaintenance.cs | 18 +++++++++++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/NavigatManager.cs b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/NavigatManager.cs index c0ffa3263..d1df92b7e 100644 --- a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/NavigatManager.cs +++ b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/NavigatManager.cs @@ -215,7 +215,8 @@ namespace SqlSugar FieldValue = String.Join(",", ids), CSharpTypeName = aColumn.PropertyInfo.PropertyType.Name })); - var abids = this.Context.Queryable().AS(mappingEntity.DbTableName).Where(conditionalModels).Select($"{aColumn.DbColumnName} as aid,{bColumn.DbColumnName} as bid").ToList(); + var queryable = this.Context.Queryable(); + var abids = queryable.AS(mappingEntity.DbTableName).Where(conditionalModels).Select($"{queryable.SqlBuilder.GetTranslationColumnName(aColumn.DbColumnName)} as aid,{queryable.SqlBuilder.GetTranslationColumnName(bColumn.DbColumnName)} as bid").ToList(); List conditionalModels2 = new List(); conditionalModels2.Add((new ConditionalModel() diff --git a/Src/Asp.NetCore2/SqlSugar/Realization/SqlServer/DbMaintenance/SqlServerDbMaintenance.cs b/Src/Asp.NetCore2/SqlSugar/Realization/SqlServer/DbMaintenance/SqlServerDbMaintenance.cs index 921aa931d..6cc3f04d2 100644 --- a/Src/Asp.NetCore2/SqlSugar/Realization/SqlServer/DbMaintenance/SqlServerDbMaintenance.cs +++ b/Src/Asp.NetCore2/SqlSugar/Realization/SqlServer/DbMaintenance/SqlServerDbMaintenance.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Text; +using System.Text.RegularExpressions; namespace SqlSugar { @@ -440,7 +441,22 @@ namespace SqlSugar } var oldDatabaseName = this.Context.Ado.Connection.Database; var connection = this.Context.CurrentConnectionConfig.ConnectionString; - connection = connection.Replace(oldDatabaseName, "master"); + if (Regex.Split(connection, oldDatabaseName).Length > 2) + { + var name=Regex.Match(connection, @"database\=\w+|datasource\=\w+",RegexOptions.IgnoreCase).Value; + if (!string.IsNullOrEmpty(name)) + { + connection = connection.Replace(name, "database=master"); + } + else + { + Check.ExceptionEasy("Failed to create the database. The database name has a keyword. Please change the name", "建库失败,库名存在关键字,请换一个名字"); + } + } + else + { + connection = connection.Replace(oldDatabaseName, "master"); + } var newDb = new SqlSugarClient(new ConnectionConfig() { DbType = this.Context.CurrentConnectionConfig.DbType,