LINQ IEnumerable <t []>到IEnumerable <t>

时间:2015-06-02 14:53:04

标签: c# linq

如果查询返回IEnumerable,我怎样才能使它变平并且在一个IEnumerable中拥有数组中的所有T?

var types = from genericType in subscriber.GetType().GetInterfaces()
            where genericType.IsGenericType 
            && genericType.GetGenericTypeDefinition() == typeof (ISubscriber<>)
            select genericType.GetGenericArguments();

1 个答案:

答案 0 :(得分:6)

您可以使用SelectMany中的Linq方法:

var flat = types.SelectMany(x => x);