Внешний стол не находится в ожидаемом формате, когда файл Excel закрывается

Мой импорт работает хорошо с .xls файлом, но он не работает с .xlsx, что я создал в Excel 2010, если он не открыт.

Мой код похож на это:

public static DataSet Sheets(string filePath, bool header)
        {
            DataSet dsResults = new DataSet();
            string hasHeader = header ? "YES" : "NO";

            OleDbConnectionStringBuilder sbConnection = new OleDbConnectionStringBuilder();
            String strExtendedProperties = String.Empty;
            sbConnection.DataSource = filePath;
            if (Path.GetExtension(filePath).ToLower().Equals(".xls"))//Excel 97-03
            {
                sbConnection.Provider = "Microsoft.Jet.OLEDB.4.0";
                strExtendedProperties = String.Format("Excel 8.0;HDR={0};IMEX=1", header);
            }
            else if (Path.GetExtension(filePath).ToLower().Equals(".xlsx")) //Excel 2007
            {
                sbConnection.Provider = "Microsoft.ACE.OLEDB.12.0";
                strExtendedProperties = String.Format("Excel 12.0;HDR={0};IMEX=1", header);
            }
            sbConnection.Add("Extended Properties", strExtendedProperties);

            using (OleDbConnection conn = new OleDbConnection(sbConnection.ToString()))
            {
                conn.Open();
                DataTable dtSheet = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);

                foreach (DataRow drSheet in dtSheet.Rows)
                {
                    if (drSheet["TABLE_NAME"].ToString().Contains("$") && !drSheet["TABLE_NAME"].ToString().EndsWith("_"))
                    { .......

The error I receive on conn.Open();

Я также видел решения говорить, чтобы изменить вещи в нем и еще спасти его снова так или иначе. Вещь, я должен заставить ее работать, не делая этого, потому что она входит в DLL, который идет в другой devs, кто будет использовать ее с закачкой файла на веб-сайте. Таким образом, пользователь (клиент) загрузит файл, и когда проверка скажет, что это - действительное, превосходят файл, это войдет в мой код.

2
nl ja de
@Yogendra вы имеете в виду то, что я написал в названии? хорошо: "Внешний стол не находится в ожидаемом формате"
добавлено автор bokkie, источник
@Bart LOL. OCD?
добавлено автор bokkie, источник
@Bart;) я также вашего редактировать:))
добавлено автор bokkie, источник
@bokkie:) Я особенно наслаждался иронией той.;)
добавлено автор Bart, источник
Пожалуйста, заявите ошибку.
добавлено автор Igoy, источник
Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot