///<summary>
        /// Initializes a new DatabaseConfigurationExtension with a <see cref="IDatabaseConfigurationProviders"/> context.
        ///</summary>
        ///<remarks>
        /// This class supports extending the data configuration section's fluent-style API.  New database providers
        /// can inherit from this class to gain access to the current <see cref="ConnectionString"/> and underlying <see cref="Builder"/>
        /// properties.  
        /// 
        /// This class also implements the <see cref="IDatabaseConfigurationProperties"/> to enable continuation of the data
        /// fluent interface.
        /// </remarks>
        ///<param name="context"></param>
        protected DatabaseConfigurationExtension(IDatabaseConfigurationProviders context)
        {
            if (context == null) throw new ArgumentNullException("context");

            this.context = (IDatabaseConfigurationProperties)context;
            Debug.Assert(typeof (IDatabaseProviderExtensionContext).IsAssignableFrom(context.GetType()));
        }
 protected DatabaseConfigurationExtension(IDatabaseConfigurationProviders context)
 {
     if (context == null)
     {
         throw new ArgumentNullException(nameof(context));
     }
     this.context = (IDatabaseConfigurationProperties)context;
 }
        ///<summary>
        /// Initializes a new DatabaseConfigurationExtension with a <see cref="IDatabaseConfigurationProviders"/> context.
        ///</summary>
        ///<remarks>
        /// This class supports extending the data configuration section's fluent-style API.  New database providers
        /// can inherit from this class to gain access to the current <see cref="ConnectionString"/> and underlying <see cref="Builder"/>
        /// properties.
        ///
        /// This class also implements the <see cref="IDatabaseConfigurationProperties"/> to enable continuation of the data
        /// fluent interface.
        /// </remarks>
        ///<param name="context"></param>
        protected DatabaseConfigurationExtension(IDatabaseConfigurationProviders context)
        {
            if (context == null)
            {
                throw new ArgumentNullException("context");
            }

            this.context = (IDatabaseConfigurationProperties)context;
            Debug.Assert(typeof(IDatabaseProviderExtensionContext).IsAssignableFrom(context.GetType()));
        }
 protected override void Arrange()
 {
     base.Arrange();
     DatabaseConfiguration = DataConfig.ForDatabaseNamed(DatabaseName);
 }