В настоящее время я работаю над проектом по миграции проекта .NET 4.7.2 Framework на .NET Core 2.1.Мне нужно использовать DLL, которая была изначально скомпилирована как x86.
Моя многоуровневая логика выглядит так:
.NET Core 2.1 проект (Любой ЦП): получить класс обслуживания, введенный из .NET
.NET Стандартный проект (Любой ЦП): содержит бизнес-логику (в настоящее время стандарт .net, но будетпереносится в ядро) и загружает DLL из
.C ++ / проекта DLL : изначально был создан для среды x86, я просто перекомпилировал в x64 DLL, котораяЯ упоминал в самом деле оба проекта выше.
Мой проект .NET Core 2.1 содержит SignalR Hub, который получает экземпляр IMyService, внедренный в конструктор.Я разрешаю зависимость в своем классе Startup в основном проекте, например:
services.AddSingleton<IMyService, MyService>();
Однако, когда я не обращаюсь к DLL, все работает нормально, как только я обращаюсь к DLL и использую типиз внешней библиотеки я получаю следующее исключение:
An unexpected error occurred invoking 'MyService' on the server. TypeInitializationException: The type initializer for '<Module>' threw an exception.
У вас есть идеи, как я могу решить эту проблему?У меня заканчиваются идеи.Спасибо !!