/ / Метод бритви Chaining / Fluent не працює з розривами рядків - asp.net-mvc, asp.net-mvc-3, бритвою

Різновидний метод послідовного / вільного розповсюдження не працює з розбиттями рядків - asp.net-mvc, asp.net-mvc-3, бритва

Дозволяє просто сказати, що я маю якийсь вільний синтаксис у бритві, як це:

@Model.ListOfStuff.Where(x=>x.StuffProp == "Some Stuff").FirstOrDefault().SomeOtherProp

Але скажемо, що насправді було дуже довготому що це помічник, який будує складну сітку. Якщо його все на одній лінії він працює нормально, але коли його на більш ніж одній лінії він ударів один від одного. Як це можна виправити?

@Model.ListOfStuff.Where(x=>x.StuffProp == "Some Stuff")
.FirstOrDefault().SomeOtherProp

Відповіді:

8 для відповіді № 1

Маючи такий синтаксис у вигляді, це просто неправильно і я не можу більше підкреслити це. Це не відповідальність за перегляд фільтрів і вибірки даних. Його відповідальність полягає в тому, щоб показати дані, що були надані контролером. що у перегляді все, що потрібно написати:

@Model.SomeStuff

Як ви можете бачити, ви більше не повинні турбуватися про будь-які розриви рядків у вигляді.

Але щоб відповісти на ваше запитання, потворність може бути загорнута в дужки:

@(Model.ListOfStuff.Where(x => x.StuffProp == "Some Stuff")
.FirstOrDefault().SomeOtherProp)