8

In Excel I can go to Data -> Import External Data -> Import Data... and then select the data source to use and then after I provide login information it gives me a list of tables. I would like to know how to get that list programmatically using C#.

classicspage
  • 161
  • 1
  • 4
  • 12

2 Answers2

11

What type of data source are you interrogating? SQL Server? Access?

Look at this thread: http://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/bcf25d16-3ecd-427d-9ad2-57619d6b3691

Also documentation for the OdbcConnection.GetSchema Method here: http://msdn.microsoft.com/en-us/library/system.data.odbc.odbcconnection.getschema.aspx

This may work for you: OdbcConnection.GetSchema("Tables")

GEOCHET
  • 21,119
  • 15
  • 74
  • 98
Krip
  • 854
  • 1
  • 7
  • 15
8

Normally, you would have to be a bit more explicit to disregard system tables:

connection.GetSchema("Tables").AsEnumerable().Where(r => r.Field<string>("TABLE_TYPE") == "TABLE")
Lars Michael
  • 693
  • 9
  • 19