Я работаю над старой сеткой Winforms, и у меня есть две Модели, которые я пытаюсь сгладить и назначить DataGridView.Как сгладить вложенные объекты (LINQ)
Вот мои образцы моделей.
public class StockItem
{
public string StockName { get; set; }
public int Id { get; set; }
public List<Warehouse> Warehouses { get; set; }
}
public class Warehouse
{
public string WarehouseName { get; set; }
public int Id { get; set; }
}
Данные работает таким образом, что склад должен сначала быть создан, а затем присваивается каждому StockItem
. A StockItem
может иметь все склады или может иметь только один.
Мне нужно сгладить данные, чтобы сетка отображала StockName
, а затем все связанные с ними склады для элемента запаса.
Пример
StockCode1 Warehouse1 Warehouse2 Warehouse3
StockCode2 Warehouse1 Warehouse2
StockCode2 Warehouse1 Warehouse3
Я попытался сделать это с помощью запроса Linq, но может получить только запись на StockItem \ Warehouse.
Возможно, это поможет? http://stackoverflow.com/questions/6428940/how-to-flatten-nested-objects-with-linq-expression –
На самом деле это не сглаживание, а кросс-таблица/поворот –
. Каким будет результирующий тип данных? Существует ли максимальное количество возможных складов, которые могут быть связаны с «StockItem»? Я не знаком с WinForms 'DataGridView', поэтому может быть что-то, что мне не хватает, но не нужно было привязывать его к набору строго типизированных объектов?Похоже, что с переменным количеством складов вы не могли этого сделать. –