全,
我已经获得了以下代码,并通过使用Linq来研究如何提高其可靠性(并删除null检查)。
var activePlan = CurrentPlans.First();
var activeObjectives = activePlan != null ? activePlan.Objectives : null;我得到的最接近的结果如下:
var activeObjectives = CurrentPlans.Take(1).Select(x => x.Objectives);这给了我一个x.Objectives的集合,而不是目标。有什么想法吗?
发布于 2010-08-15 17:53:17
哦,明白了:
var activeObjectives = CurrentPlans.Take(1).SelectMany(x => x.Objectives)http://msdn.microsoft.com/en-us/library/system.linq.enumerable.selectmany.aspx
发布于 2010-08-15 18:02:06
我会这样写:
var activeObjectives = CurrentPlans.Select(x => x.Objectives).FirstOrDefault();这样,通过使用方法可以更容易地计算出意图。采用第一组目标,否则采用默认值(null,假设目标指的是引用类型)。对于这种情况,使用SelectMany()并不是最好的选择。
https://stackoverflow.com/questions/3486902
复制相似问题