我有一个类型。
我怎样才能判断它是不是IEnumerable<>
类型?
这些:
typeof(IEnumerable<>).IsAssignableFrom(memberType);
typeof(IEnumerable<object>).IsAssignableFrom(memberType);
IEnumerable<int>
返回false
相比之下:
typeof(IEnumerable).IsAssignableFrom(memberType);
对于字符串,返回 true。
memberType.GetInterfaces()
。针对每个接口,查看Type.GetGenericTypeDefinition()
。 - 15ee8f99-57ff-4f92-890c-b56153string
是可以枚举的——你可以迭代它的字符。 - LuaanSystem.Type
或object
? - John AlexiouSystem.Type
具体来说,我有一个MemberInfo
,我可以在其上调用.GetUnderlyingType()
。 - Sarov