Собственный AOT C# .NET Core с отражением Activator.CreateInstanceC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Собственный AOT C# .NET Core с отражением Activator.CreateInstance

Сообщение Anonymous »

Я пытаюсь использовать метод Activator.CreateInstance отражения для создания требуемого модуля с параметрами, как показано ниже.

Код: Выделить всё

 public TModule CreateModule(params object[]? parameters) where TModule : ApplicationModule
{
/*
* Create module
*/
TModule? module = Activator.CreateInstance(typeof(TModule), parameters) as TModule;
if (module is null)
throw new Exception($"Failed to create module with type: {typeof(TModule).Name}");

/*
* Register it to the pending modules
*/
_pendingModules.Add(module);

return module;
}
Но он всегда возвращается.

Код: Выделить всё

  Unhandled Exception: System.MissingMethodException: No parameterless constructor defined for type 'Runtime.Reflection.ReflectionModule'.
at System.ActivatorImplementation.CreateInstance(Type, Boolean) + 0x121
at Runtime.Application.Application.CreateModule[TModule]() + 0x35
at EditorPlayer.Program.Main(String[]) + 0x107
at EditorPlayer!+0x862f1b
Несмотря на то, что целевой класс имеет конструктор по умолчанию, он все равно выдает ту же ошибку. Я думал, что отражение присутствует в собственных сборках AOT.

Подробнее здесь: https://stackoverflow.com/questions/765 ... teinstance
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»