LINQ IEnumerable <T []>到IEnumerable <T>

use*_*177 0 c# linq

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

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

Fla*_*ric 6

您可以使用以下SelectMany方法Linq:

var flat = types.SelectMany(x => x);
Run Code Online (Sandbox Code Playgroud)