Чтение нескольких листов Excel с разными именами
Я хотел бы знать, как я могу читать несколько листов Excel с разными именами листов в C # и с использованием Oledb.
У меня есть этот способ чтения нескольких листов (но с фиксированным именем листа):
DataSet ds = new DataSet();
var excelConnectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=Excel 8.0", path);
OleDbConnection connection = new OleDbConnection();
connection.ConnectionString = excelConnectionString;
var i = 1;
while (i <= 4)
{
string query = "SELECT * FROM [Sheet" + i + "$]";
ds.Clear();
OleDbDataAdapter data = new OleDbDataAdapter(query, connection);
data.Fill(ds);
// other stuff
i = i + 1;
}
Этот работает. Но сейчас я нахожусь в другой ситуации, когда имена рабочих листов не фиксированы, например: Sheet1 - это Dog, Sheet2 - это Cat Sheet3 - это Bird.
Теперь меня беспокоит то, как я могу зацикливать имена этих таблиц с использованием моего существующего кода.