public ShardingIQueryable(IQueryable <T> source, IVirtualTableManager virtualTableManager, IShardingDbContextProvider shardingDbContextProvider)
 {
     _entityType   = typeof(T);
     _source       = source;
     _virtualTable = (IVirtualTable <T>)virtualTableManager.GetVirtualTable(_entityType);
     _shardingDbContextProvider = shardingDbContextProvider;
 }
 public ShardingBootstrapper(IServiceProvider serviceProvider, IVirtualTableManager virtualTableManager, IShardingDbContextProvider shardingDbContextProvider)
 {
     _serviceProvider           = serviceProvider;
     _virtualTableManager       = virtualTableManager;
     _shardingDbContextProvider = shardingDbContextProvider;
 }
 public DefaultRepository(IVirtualTableManager virtualTableManager, IShardingDbContextProvider shardingDbContextProvider)
 {
     _virtualTableManager       = virtualTableManager;
     _shardingDbContextProvider = shardingDbContextProvider;
 }