3
Предположим, у меня есть следующие:Как преобразовать тип ref в эквивалент «non ref»?
var t = typeof(Foo).MakeByRefType();
есть какие-либо способы, чтобы преобразовать результат обратно в typeof(Foo)
?
Честно говоря, единственный способ я нашел это:
var t = typeof(Foo).MakeByRefType();
string name = t.Name.Trim('&');
string asmQualified = t.AssemblyQualifiedName.Replace(t.Name, name);
var v = Type.GetType(asmQualified);
Другие методы, которые я пробовал, не похоже на работу:
- Существуют ли более эффективные способы сделать это?
- Если это единственный способ, существуют ли ситуации, в которых он может выйти из строя (возможно, с динамически генерируемыми сборками)?
Спасибо! На самом деле это было связано только с получением типов элементов, содержащихся в массивах. – Chaplin89