У меня есть таблица данных с последующей записьюКак преобразовать запись данных в пользовательский класс?
Columns -> A B C D E
Rows-> 1 2 3 X Y
1 2 3 P Q
Я хотел бы это DataTable, чтобы преобразовать в мой пользовательского список следующим образом
MyClass
{
int A
int B
int C
List<ChildClass>
}
ChildClass
{
String D
String E
}
Я использую следующий код, чтобы сделать это, но я застрял между для ChildClass. Пожалуйста помоги?
IList<MyClass> items = dt.AsEnumerable().Select(row =>
new MyClass
{
A= row.Field<int>("A"),
B= row.Field<int>("B"),
C= row.Field<int>("C"),
}).ToList();
Я не совсем следую логике. Зачем вам нужен D & E в дочернем классе? Если вам это нужно, зачем вам список? – Jonesopolis
В моем реальном приложении MyClass - это моя пользовательская категория производительности, а дочерний класс связан с CustomCounters. Поэтому, поскольку одна категория может иметь несколько счетчиков, поэтому мне нужен список дочерних классов. Точно так же будет несколько категорий. A, B, C feilds являются уникальными факторами для принятия решения о новом MyClass, это означает, что если A, B, C имеют одинаковое значение в datatable соответствующих D, E coulumn valus должны появиться с другим дочерним списком. Надеюсь, теперь я понятен? –
Я думаю, что ваша база данных неправильно нормализована. Вы должны рассмотреть возможность разбиения групп A, B, C на собственную таблицу. (посмотрите «нормализация базы данных», если вы не уверены, что я имею в виду) –