【发布时间】:2011-02-28 23:11:13
【问题描述】:
我有一些这样的代码:
var effects = xElement.Elements ( "Effects" ).Elements ( "Effect" ).Select (
e => new Effect (
( EffectType ) Enum.Parse ( typeof ( EffectType ), ( string ) e.Elements ( "Type" ).FirstOrDefault ( ) ),
e.Elements ( "Options" ).Any ( )
? e.Elements ( "Options" ).Select ( o => ( object ) o.Elements ( "Option" ).Select ( n => n.Value ).First ( ) )
: null ) )
.ToList ( );
但目前这看起来不可读,我不确定应该在哪里添加新行和/或缩进以提高可读性。
有什么建议可以用来制作一致、可读的 linq 块?
【问题讨论】:
-
这是我的评论;不要使用 LINQ,因为它会更清楚地显示为遍历每个元素的简单循环,获取属性,然后将新对象添加到列表中。
-
谢谢,可以举个例子。我不确定您如何以相同的方式使用循环来实现这一点。
标签: c# .net linq coding-style