优化 DynamicShardingHelper 的动态添加的代码
This commit is contained in:
parent
a04ca15169
commit
a33de9395a
|
@ -6,6 +6,7 @@ using Sample.MySql.multi;
|
|||
using Sample.MySql.Shardings;
|
||||
using ShardingCore.Core.RuntimeContexts;
|
||||
using ShardingCore.Core.VirtualRoutes.TableRoutes.Abstractions;
|
||||
using ShardingCore.Helpers;
|
||||
|
||||
namespace Sample.MySql.Controllers
|
||||
{
|
||||
|
@ -57,7 +58,7 @@ namespace Sample.MySql.Controllers
|
|||
// Console.WriteLine("------------");
|
||||
// using (var tran = _defaultTableDbContext.Database.BeginTransaction())
|
||||
// {
|
||||
var sysUserMods = _defaultTableDbContext.Set<SysUserMod>().OrderBy(o=>o.Id).ThenBy(o=>o.Name);
|
||||
var firstOrDefault = _defaultTableDbContext.Set<SysUserMod>().FromSqlRaw($"select * from {nameof(SysUserMod)}").FirstOrDefault();
|
||||
|
||||
var sysUserMods1 = _defaultTableDbContext.Set<SysTest>()
|
||||
.Select(o => new ssss(){ Id = o.Id, C = GetAll().Count(x => x.Id == o.Id) }).ToList();
|
||||
|
|
|
@ -7,7 +7,6 @@ using System.Threading.Tasks;
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using ShardingCore.Core.DbContextCreator;
|
||||
using ShardingCore.Core.RuntimeContexts;
|
||||
using ShardingCore.Core.ShardingMigrations.Abstractions;
|
||||
using ShardingCore.Core.VirtualDatabase.VirtualDataSources.PhysicDataSources;
|
||||
using ShardingCore.EFCores;
|
||||
using ShardingCore.Exceptions;
|
||||
|
@ -36,9 +35,12 @@ namespace ShardingCore.Helpers
|
|||
{
|
||||
var virtualDataSource = shardingRuntimeContext.GetVirtualDataSource();
|
||||
virtualDataSource.AddPhysicDataSource(new DefaultPhysicDataSource(dataSourceName, connectionString, false));
|
||||
if (createDatabase || createTable)
|
||||
{
|
||||
var dataSourceInitializer = shardingRuntimeContext.GetDataSourceInitializer();
|
||||
dataSourceInitializer.InitConfigure(dataSourceName,createDatabase,createTable);
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 动态添加数据源
|
||||
/// </summary>
|
||||
|
@ -47,8 +49,7 @@ namespace ShardingCore.Helpers
|
|||
/// <param name="connectionString"></param>
|
||||
public static void DynamicAppendDataSourceOnly(IShardingRuntimeContext shardingRuntimeContext, string dataSourceName, string connectionString)
|
||||
{
|
||||
var virtualDataSource = shardingRuntimeContext.GetVirtualDataSource();
|
||||
virtualDataSource.AddPhysicDataSource(new DefaultPhysicDataSource(dataSourceName, connectionString, false));
|
||||
DynamicAppendDataSource(shardingRuntimeContext, dataSourceName, connectionString, false, false);
|
||||
}
|
||||
|
||||
public static async Task DynamicMigrateWithDataSourcesAsync(IShardingRuntimeContext shardingRuntimeContext,
|
||||
|
|
Loading…
Reference in New Issue