First up, you need to get your database design sorted. It's a very bad idea to have separate tables when the data is basically the same. You should absolutely not have a separate table for dates for each office. You should have a table for offices and a table for dates and each date record contains an office ID. You can then query the database for all dates with a specific office ID. You can read the results into a List(Of Date) using a DataReader and call ToArray or you can use populate a DataTable using a DataAdapter and use LINQ to get an array of Dates. Once you've got your array, you use just as you did in your original code.