我有一个对象源是IEnumerable< T>其中T可以是某些类或IGrouping或嵌套的IGrouping。
如何确定它是嵌套的组还是单个组?是否已分组?
答案 0 :(得分:2)
它对我有用。谢谢Jan.以下是我从你的回答中得到的功能:
public static bool HasInnerGrouping<T>(this IEnumerable<T> coll)
{
return typeof(T).GenericTypeArguments.Any(item => item.Name.Contains("IGrouping"));
}
答案 1 :(得分:1)
快速而肮脏的方法,但由于强大的string
均衡而不是很好。
public bool isOrHasGrouping<T>(IEnumerable<T> coll)
{
return
typeof(T).Name.Contains("IGrouping")
? true
: (typeof(T).ContainsGenericParameters
? typeof(T).GenericTypeArguments
.Any(item => item.Name.Contains("IGrouping"))
: false);
}