外部表不是仅在某些情况下抛出的预期格式

时间:2012-08-23 15:41:42

标签: c#

我正在尝试打开一个xlsx文件,只有当我从应用程序的某个区域打开时,我才会看到外部表格不是预期的格式。因此,如果我从1个区域调用它,它的工作正常,但是我从应用程序的不同部分执行相同的操作,调用相同的代码块,并抛出该异常。相同的代码块。相同的excel文件。

string connectionString = "Provider="+ GetProvider(fileName) +"; data source=" + fileName + "; " + GetExtendedProperties(fileName);

                using (var connection = new OleDbConnection(connectionString))
                {
                    connection.Open();

                    using (DataTable schemaTable = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
                                                                                  new object[] { null, null, null, "TABLE" }))
                    {
                        if (schemaTable != null && schemaTable.Rows != null)
                        {
                            List<string> validTables = schemaTable.Rows.OfType<DataRow>().Select(row => (string)row["TABLE_NAME"]).ToList();

                            validTables.ForEach(table =>
                            {
                                if (table.Contains('$'))
                                {
                                    results.WorkSheets.Add(table.Trim('\'', '$'));
                                }
                                else
                                {
                                    results.NamedRanges.Add(table);
                                }
                            });
                        }
                    }
                }

我的连接字符串:

提供商= Microsoft.ACE.OLEDB.12.0; data source = C:\ moses \ BLANKTest \ Table.xlsx;扩展属性=“Excel 12.0 Xml”;

还尝试了连接字符串,最后取出“Xml”。没有运气。

不确定这里发生了什么。

0 个答案:

没有答案