public AccessDatabaseParams(
            string file,
            OleDbProviders provider)
        {
            string p   = "";
            string ext = System.IO.Path.GetExtension(file);

            switch (provider)
            {
            case OleDbProviders.ACE: p = "Microsoft.ACE.OLEDB.12.0"; break;

            case OleDbProviders.Jet: p = "Microsoft.Jet.OLEDB.4.0"; break;

            case OleDbProviders.Auto:
                if (ext == ".accdb" || IntPtr.Size >= 8)
                {
                    p = "Microsoft.ACE.OLEDB.12.0";
                }
                else
                {
                    p = "Microsoft.Jet.OLEDB.4.0";
                }
                break;
            }

            OleDbConnectionStringBuilder b = new OleDbConnectionStringBuilder();

            b.Provider   = p;
            b.DataSource = file;

            this.ConnectionString = b.ConnectionString;
        }
        public ExcelDatabaseParams(
            string file,
            bool headers,
            ExcelFormats format     = ExcelFormats.Auto,
            OleDbProviders provider = OleDbProviders.Auto)
        {
            string p = "";
            string extended_properties = "";
            string ext = System.IO.Path.GetExtension(file);

            switch (provider)
            {
            case OleDbProviders.ACE: p = "Microsoft.ACE.OLEDB.12.0"; break;

            case OleDbProviders.Jet: p = "Microsoft.Jet.OLEDB.4.0"; break;

            case OleDbProviders.Auto:
                if (format == ExcelFormats.Xlsx || ext == ".xlsx" || IntPtr.Size >= 8)
                {
                    p = "Microsoft.ACE.OLEDB.12.0";
                }
                else
                {
                    p = "Microsoft.Jet.OLEDB.4.0";
                }
                break;
            }

            /*Формирование расширенных свойств подключения*/
            switch (format)
            {
            case ExcelFormats.Xlsx: extended_properties = "Excel 12.0 Xml;"; break;

            case ExcelFormats.Xls: extended_properties = "Excel 8.0;"; break;

            case ExcelFormats.Auto:

                if (ext == ".xls")
                {
                    extended_properties = "Excel 8.0;";
                }
                else
                {
                    extended_properties = "Excel 12.0 Xml;";
                }
                break;
            }

            if (headers)
            {
                extended_properties += "HDR=YES;";
            }
            else
            {
                extended_properties += "HDR=NO;";
            }


            OleDbConnectionStringBuilder b = new OleDbConnectionStringBuilder();

            b.Provider               = p;
            b.DataSource             = file;
            b["Extended Properties"] = extended_properties;

            this.ConnectionString = b.ConnectionString;
        }