Перед тем, как вы проигнорируете/голосуете, чтобы закрыть этот вопрос, я считаю, что это правильный вопрос, потому что ясность кода является важной темой обсуждения, важно писать код поддерживаемого кода, и я бы очень хотел ценят ответы от тех, кто раньше сталкивался с этим.
Недавно я столкнулся с этой проблемой, запросы LINQ могут стать довольно неприятными из-за большого количества вложенности.
Ниже приведены некоторые примеры различий в форматировании, которые я придумал (для того же относительно не сложного запроса)
Нет форматирования
var allInventory = system.InventorySources.Select(src => new { Inventory = src.Value.GetInventory(product.OriginalProductId, true), Region = src.Value.Region }).GroupBy(i => i.Region, i => i.Inventory);
Повышенное форматирование
var allInventory = system.InventorySources
.Select(src =>
new {
Inventory = src.Value.GetInventory(product.OriginalProductId, true),
Region = src.Value.Region })
.GroupBy(
i => i.Region,
i => i.Inventory);
Форматирование блоков
var allInventory = system.InventorySources
.Select(
src => new
{
Inventory = src.Value.GetInventory(product.OriginalProductId, true),
Region = src.Value.Region
})
.GroupBy(
i => i.Region,
i => i.Inventory
);
Форматирование списка
var allInventory = system.InventorySources
.Select(src => new { Inventory = src.Value.GetInventory(product.OriginalProductId, true), Region = src.Value.Region })
.GroupBy(i => i.Region, i => i.Inventory);
Я хочу придумать стандарт для форматирования linq, чтобы он максимально читал и понимал и выглядел чистым и профессиональным. Пока я не могу решить, поэтому я передаю вопрос профессионалам.