В двух словах: как я могу объединить две таблицы данных в полях, которые VS знает только во время выполнения, а я знаю все время? Есть ли решение, подобное
Dim result = From t1 In dt, t2 In dt2 _
Where t1.Field < DateTime > ("timestamp") = t2.Field < DateTime > ("samplestamp")
Select t1, t2
Имена этих таблиц известны только во время выполнения, поскольку обе таблицы создаются динамически.
Длинная версия:
В углу А у меня есть сервер Historian, откуда я получаю некоторые данные. Эти данные представляют собой все образцы, созданные за определенное время для заданных процессов.
В углу B у меня есть сервер SQL, откуда я также получаю некоторые данные. Эти данные представляют все пакеты, запущенные за указанное время.
Проекту необходимо, чтобы эти 2 таблицы отображались в элементе управления диаграммой.
Теперь самое интересное. Только во время выполнения я могу определить, какие столбцы будут доступны. Я не знаю, сколько столбцов я получу, потому что я не могу сказать, была ли запущена 1 партия или 100. Что я знаю, так это то, что я могу получить все эти «данные» (которые я вижу только во время выполнения), которые можно поместить в 2 таблицы данных (vb.net, потому что это СТАРЫЙ проект)
Я «знаю», например, что для данных 1 (угол A) всегда существует в таблице, где первый столбец имеет имя timestamp. (это также единственный столбец, который я здесь знаю)
И я также знаю, что первый столбец в datatable2 (угол B) называется sampletime
Итак, наступает обратный отсчет: как я могу соединить эти две таблицы данных с заданными именами в одну яркую таблицу данных, которую я затем использую в качестве источника данных для управления моей диаграммой. Следовательно, проблема решена.
Я попытался сделать это и создать одну таблицу sql на SQL-сервере, проблема в том, что я работаю с сервером, которому не нравятся транзакции, поэтому это не сработало.