1
我使用下面的方法,但在Dictionary
它返回TKey
。 Dictionary
implements ICollection<KeyValuePair<TKey,TValue>>
所以我怎樣才能得到 KeyValuePair<TKey,TValue>
?獲取泛型類型out of ICollection
public static Type GetCollectionGenericType(this Type type)
{
foreach(Type interfaceType in type.GetInterfaces())
{
if(interfaceType.IsGenericType &&
interfaceType.GetGenericTypeDefinition() == typeof(ICollection<>))
{
return type.GetGenericArguments()[ 0 ];
}
}
return null;
}