Я пытаюсь динамически генерировать C# class t во время выполнения, используя Offuret.emit (или другие методы создания динамического типа). Задача состоит в том, что базовый класс представляет собой общий тип U , который является
уже статически определенным , и я хочу, чтобы динамически созданный класс наследовал от него, используя себя в качестве аргумента типа. Другими словами, я хочу создать тип, который удовлетворяет: < /p>
Сложность заключается в том, что T не существует в тот момент, когда мне нужно указать общий аргумент для базового класса. Я пробовал подходы, такие как: < /p>
Код: Выделить всё
Type baseType = typeof(U).MakeGenericType(dynamicTypeBuilder); // incorrect
… Но это не компилируется, потому что Dynamictypebuilder еще не является завершенным типом.
Есть ли способ в C# для динамического создания типа t , что он определяет от общего базового класса u , где t определяется? Если да, то как это можно сделать, используя отражение. EMIT или аналогичные механизмы генерации типа выполнения?>
Подробнее здесь:
https://stackoverflow.com/questions/797 ... -base-clas