Мне нужно определить, является ли объект типа IDictionary<string, string>
IDictionary<,>
, и у меня возникают проблемы с правильной логикой сравнения.
Я пробовал следующее:
typeof(IDictionary<string, string>)
.GetInterface(typeof(IDictionary<,>).Name);
и
typeof(IDictionary<string, string>)
.GetGenericTypeDefinition()
.GetInterface(typeof(IDictionary<,>).Name);
Вызов typeof(Dictionary<string,string>).GetInterface(comparisonType.Name)
возвращает ожидаемый ненулевой результат, но если я сравниваю тип IDictionary<string,string>
, GetInterface()
возвращает ноль.Аналогично, сравнение с GenericTypeDefinition также возвращает ноль.