void GetUniqueIdProvider( IStoreIdProvider storeIdProvider) { if (storeIdProvider != null) { StoreIdProvider = storeIdProvider; return; } try { StoreIdProvider = ServiceLocator.Current?.GetInstance <IStoreIdProvider>() ?? new HiLoStoreIdProvider(); } catch (InvalidOperationException) { StoreIdProvider = new HiLoStoreIdProvider(); } catch (ActivationException) { StoreIdProvider = new HiLoStoreIdProvider(); } catch (ResolutionFailedException) { StoreIdProvider = new HiLoStoreIdProvider(); } }
protected EFRepositoryBase( string connectionString, IStoreIdProvider storeIdProvider = null) : base(connectionString) { GetUniqueIdProvider(storeIdProvider); }
/// <summary> /// Initializes a new instance of the <see cref="ModelRepository" /> class. /// Required by the migrations only. /// </summary> public TestRepository( IStoreIdProvider storeIdProvider) : base("TestPCCRCHT", storeIdProvider) { #if DEBUG //Database.Log = s => Debug.Write(s); #endif OptimisticConcurrencyStrategy = OptimisticConcurrencyStrategy.ClientWins; }
/// <summary> /// Initializes a new instance of the repository with a connection string and by default will use the HiLo PK generator. /// </summary> /// <param name="connectionString"> /// The DB connection string. /// </param> public TestEFRepository( string connectionString, IStoreIdProvider storeIdProvider = null) : base(connectionString, storeIdProvider) { if (connectionString.IsNullOrWhiteSpace()) { throw new ArgumentException("The argument cannot be null, empty string or consist of whitespace characters only.", nameof(connectionString)); } }
protected EFRepositoryBase( IStoreIdProvider storeIdProvider = null) : base() { GetUniqueIdProvider(storeIdProvider); }