33using System . Linq ;
44using System . Text ;
55using System . Threading . Tasks ;
6- using Microsoft . EntityFrameworkCore ;
76using ShardingCore . Core . RuntimeContexts ;
8- using ShardingCore . Core . VirtualDatabase . VirtualDataSources ;
9- using ShardingCore . Core . VirtualDatabase . VirtualDataSources . Abstractions ;
107using ShardingCore . Core . VirtualDatabase . VirtualDataSources . PhysicDataSources ;
11- using ShardingCore . DynamicDataSources ;
128using ShardingCore . Exceptions ;
13- using ShardingCore . Sharding . Abstractions ;
149using ShardingCore . Sharding . ReadWriteConfigurations . Abstractions ;
1510
1611namespace ShardingCore . Helpers
@@ -25,31 +20,40 @@ private DynamicShardingHelper()
2520 /// <summary>
2621 /// 动态添加数据源
2722 /// </summary>
28- /// <typeparam name="TShardingDbContext"></typeparam>
2923 /// <param name="shardingRuntimeContext"></param>
3024 /// <param name="dataSourceName"></param>
3125 /// <param name="connectionString"></param>
3226 /// <param name="createDatabase"></param>
3327 /// <param name="createTable"></param>
34- public static void DynamicAppendDataSource < TShardingDbContext > ( IShardingRuntimeContext shardingRuntimeContext , string dataSourceName , string connectionString , bool createDatabase , bool createTable ) where TShardingDbContext : DbContext , IShardingDbContext
28+ public static void DynamicAppendDataSource ( IShardingRuntimeContext shardingRuntimeContext , string dataSourceName , string connectionString , bool createDatabase , bool createTable )
3529 {
3630 var virtualDataSource = shardingRuntimeContext . GetVirtualDataSource ( ) ;
3731 virtualDataSource . AddPhysicDataSource ( new DefaultPhysicDataSource ( dataSourceName , connectionString , false ) ) ;
3832 var dataSourceInitializer = shardingRuntimeContext . GetDataSourceInitializer ( ) ;
3933 dataSourceInitializer . InitConfigure ( dataSourceName , createDatabase , createTable ) ;
4034 }
35+ /// <summary>
36+ /// 动态添加数据源
37+ /// </summary>
38+ /// <param name="shardingRuntimeContext"></param>
39+ /// <param name="dataSourceName"></param>
40+ /// <param name="connectionString"></param>
41+ public static void DynamicAppendDataSourceOnly ( IShardingRuntimeContext shardingRuntimeContext , string dataSourceName , string connectionString )
42+ {
43+ var virtualDataSource = shardingRuntimeContext . GetVirtualDataSource ( ) ;
44+ virtualDataSource . AddPhysicDataSource ( new DefaultPhysicDataSource ( dataSourceName , connectionString , false ) ) ;
45+ }
4146
4247 /// <summary>
4348 /// 动态添加读写分离链接字符串
4449 /// </summary>
45- /// <typeparam name="TShardingDbContext"></typeparam>
4650 /// <param name="shardingRuntimeContext"></param>
4751 /// <param name="dataSourceName"></param>
4852 /// <param name="connectionString"></param>
4953 /// <param name="readNodeName"></param>
5054 /// <exception cref="ShardingCoreInvalidOperationException"></exception>
51- public static void DynamicAppendReadWriteConnectionString < TShardingDbContext > ( IShardingRuntimeContext shardingRuntimeContext , string dataSourceName ,
52- string connectionString , string readNodeName = null ) where TShardingDbContext : DbContext , IShardingDbContext
55+ public static void DynamicAppendReadWriteConnectionString ( IShardingRuntimeContext shardingRuntimeContext , string dataSourceName ,
56+ string connectionString , string readNodeName = null )
5357 {
5458 var virtualDataSource = shardingRuntimeContext . GetVirtualDataSource ( ) ;
5559 if ( virtualDataSource . ConnectionStringManager is IReadWriteConnectionStringManager
0 commit comments