Что эквивалентно Type.GetGenericArguments () в .NETStandard 1.0 / .NET Core?
МетодSystem.Type.GetGenericArguments()
отсутствует в .NETStandard 1.0, и я подумал, чтоTypeInfo.GenericTypeArguments
была замена дляGetGenericArguments()
но, к сожалению, они ведут себя по-разному, когда снабжены открытым универсальным типом. Возьмите, например, следующий код:
Type type = typeof(ICommandHandler<>);
type.GetGenericArguments(); // return { TCommand }
type.GetTypeInfo().GenericTypeArguments; // returns empty array
В то время какGetGenericArguments()
метод возвращает аргумент универсального типаTCommand
,GenericTypeArguments
просто возвращает пустой массив для того же открытого универсального типа.
Каково точное поведениеGenericTypeArguments
и что эквивалентноType.GetGenericArguments()
в .NET Standard 1.0?