Почему .NET Framework обеспечивают какразница между System.Type.GenericTypeArguments и System.Type.GetGenericArguments .NET (в)
System.Type.GenericTypeArguments
и
System.Type.GetGenericArguments()
, которые возвращают аргументы типа (как как Type[]
) данного родового типа?
Похоже, что свойство и метод раскрывают ту же функциональность, что означает, что интерфейс API имеет избыточные/дублирующие функциональные возможности?
Действительно? Это странно ... если цель GenericTypeArguments похожа на то, что вы говорите, то разве это не логическое?! Какая польза от возвращения пустого массива - с целью указать, является ли тип общим определением типа или нет?! – Veverke
@Veverke: он возвращает массив типов, если тип является реализацией родового типа. 'typeof (List <>). GenericTypeArguments' возвращает пустой массив' typeof (List) .GenericTypeArguments' возвращает массив, содержащий 'typeof (int)' и 'typeof (List <>). GetGenericArguments()' возвращает массив, содержащий тип для общего аргумента 'T'. –
Guffa
oh ... это яснее, хотя это непростая задача, чтобы оставаться на пути с этими именами ... – Veverke