/// <summary> /// Default constructor that will implement the default implementation for Sql Server DB Schema loading that supports static caching/lazy loading for performance. /// </summary> protected BaseSqlBulkHelper() { //Initialize the default Sql DB Schema Loader (which is dependent on the Sql Connection Provider); this.SqlDbSchemaLoader = SqlBulkHelpersDBSchemaStaticLoader.Default; }
/// <summary> /// Constructor that support passing in a customized Sql DB Schema Loader implementation. /// </summary> /// <param name="sqlDbSchemaLoader"></param> protected BaseSqlBulkHelper(ISqlBulkHelpersDBSchemaLoader sqlDbSchemaLoader) { this.SqlDbSchemaLoader = sqlDbSchemaLoader.AssertArgumentNotNull(nameof(sqlDbSchemaLoader)); }
/// <inheritdoc/> public SqlBulkIdentityHelper(ISqlBulkHelpersDBSchemaLoader sqlDbSchemaLoader, int timeoutSeconds = DefaultBulkOperationTimeoutSeconds) : base(sqlDbSchemaLoader, timeoutSeconds) { }
public SqlBulkIdentityHelper(ISqlBulkHelpersDBSchemaLoader sqlDbSchemaLoader) : base(sqlDbSchemaLoader) { }
/// <summary> /// Constructor that support passing in a customized Sql DB Schema Loader implementation. /// NOTE: This is usually a shared/cached/static class (such as SqlBulkHelpersDBSchemaStaticLoader) because it may /// cache the Sql DB Schema for maximum performance of all Bulk insert/update activities within an application; /// because Schemas usually do not change during the lifetime of an application restart. /// NOTE: With this overload there is no internal caching done, as it assumes that the instance provided is already /// being managed for performance (e.g. is static in the consuming code logic). /// </summary> /// <param name="sqlDbSchemaLoader"></param> /// <param name="timeoutSeconds"></param> protected BaseSqlBulkHelper(ISqlBulkHelpersDBSchemaLoader sqlDbSchemaLoader, int timeoutSeconds = DefaultBulkOperationTimeoutSeconds) { this.SqlDbSchemaLoader = sqlDbSchemaLoader; this.BulkOperationTimeoutSeconds = timeoutSeconds; }
/// <inheritdoc/> public SqlBulkNaturalKeyHelper(ISqlBulkHelpersDBSchemaLoader sqlDbSchemaLoader, int timeoutSeconds = DefaultBulkOperationTimeoutSeconds) : base(sqlDbSchemaLoader, timeoutSeconds) { throw new NotImplementedException(NOT_IMPLEMENTED_MESSAGE); }