Mam 2 tabele danych, których nie znam ich listy kolumn danych. Ta lista musi zostać wyodrębniona w czasie wykonywania i może być użyta do pełnego sprzężenia zewnętrznego.Pełne sprzężenie zewnętrzne, w 2 tabelach danych, z listą kolumn
Podczas korzystania z tych kolumn należy połączyć kolumny między dwiema tabelami i potrzebuję wyświetlić wszystkie dane.
Do tej pory to, co robię jest
- Get wspólne kolumn, używając przecinają się, a wdrożenie IEqualityComparer
- Utwórz nowy DataTable z tych kolumn, tak że 2 DataTables zostaną połączone w ten nowy tabela
Mam jednak problemy z Linq na drugim etapie.
Do tej pory mam:
Get wspólne kolumny
// Get common columns var commonColumns = dt1.Columns.OfType().Intersect(dt2.Columns.OfType(), new DataColumnComparer());
Tworzenie nowej tabeli dane
// Create the result which is going to be sent to the user DataTable result = new DataTable(); // Add all the columns from both tables result.Columns.AddRange( dt1.Columns.OfType() .Union(dt2.Columns.OfType(), new DataColumnComparer()) .Select(c => new DataColumn(c.Caption, c.DataType, c.Expression, c.ColumnMapping)).ToArray());
Jak mogę uzyskać efektywną pełnego sprzężenia zewnętrznego dynamicznie, z lista datakolumn, która jest wyodrębniana w czasie wykonywania?
Pracował jak urok - okrzyki Matt! – Mez