Модуль C # PRISM Unity DI не загружен - PullRequest
0 голосов
/ 08 ноября 2018

Я использую C # .Net 4.7.2 и PRISM Unity 6.2.0

Поскольку несколько часов явно одна dll больше не распознается. Путь к папке правильный. DLL, которая содержит класс, полученный из IModule, существует в папке.

Точно такая же процедура в классе начальной загрузки работает для любой другой библиотеки DLL, которая должна быть распознана и работала также для этой конкретной библиотеки DLL. Я даже не изменил dll.

Кстати, регистратор записывает каждое сообщение в окно вывода. Ни путь к папке этого конкретного dll, ни имя файла даже не упоминаются.

Модуль НЕ настроен для загрузки по требованию (это неотъемлемая часть приложения). Нет ссылки на предупреждение об успешном построении без предупреждения или ошибки.

У кого-нибудь есть подсказка, что может быть не так?

Большое спасибо!

Edit: DLL, которая не распознается, не является проблемой. Проблема возникает при регистрации типа в другой DLL.

Регистрация выглядит так

container.RegisterType<IMyInterface , MyClass>( "FancyName" );
Контейнер

- это IUnityContainer, который работает правильно. Другие регистрации работают нормально.

Интерфейс выглядит так

public interface IMyInterface
{
    void InitializeComponent();
}

И класс выглядит так

public partial class MyClass: Page, IMyClass
{
    public MyClass()
    {
        InitializeComponent();
    }
}

Страница - это System.Windows.Controls.Page

Окно событий в DiagnosticTools показывает следующее исключение:

Возникло исключение: «System.TypeLoadException» в Prism.Wpf.dll («Тип« MyNameSpace.IMyInterface »сборки« MyAssembly, Version = 1.0.0.0, Culture = нейтральный, PublicKeyToken = null »может не грузиться. ")

Может кто-нибудь помочь, пожалуйста?

...