Public Function GetTables(ByVal connectionString As String) As System.Collections.Generic.ICollection(Of Table) Implements Microsoft.Web.Management.DatabaseManager.IDbTableManager.GetTables
Dim tables As List(Of Table) = New List(Of Table)
' Create a connection to the database.
Dim connection As OleDbConnection = New OleDbConnection(connectionString)
' Open the connection to the database.
connection.Open()
Dim restrictions() As String = New String((4) - 1) {}
restrictions(3) = "TABLE"
' Open the schema information for the tables.
Dim schema As DataTable = connection.GetSchema(OleDbMetaDataCollectionNames.Tables, restrictions)
' Enumerate the list of tables.
For Each row As DataRow In schema.Rows
' Create a new table object.
Dim table As Table = New Table
' Specify the table name.
table.Name = CType(row("TABLE_NAME"), String)
' Test for a creation date.
If Not DBNull.Value.Equals(row("DATE_CREATED")) Then
' Create a date/time object.
Dim createDate As DateTime = New DateTime
' Parse the creation date for the table.
If DateTime.TryParse(row("DATE_CREATED").ToString, createDate) Then
' Specify the creation date for the table.
table.CreateDate = createDate
End If
End If
' Specify the table schema.
If Not DBNull.Value.Equals(row("TABLE_SCHEMA")) Then
table.Schema = CType(row("TABLE_SCHEMA"), String)
Else
table.Schema = String.Empty
End If
' Add the table to the list of tables.
tables.Add(table)
Next
' Return the list of tables.
Return tables
End Function