У меня есть приложение Windows Phone 7.1, которое ссылается на библиотеку Windows Phone 7.1. Эта библиотека ссылается на PCL, который включает Windows Phone 7 или выше в качестве цели.Как устранить исключение TypeLoadException, которое не указывает тип?
В какой-то момент приложение пытается создать новый экземпляр класса из библиотеки, который расширяет класс из PCL. Класс PCL имеет защищенный конструктор, поэтому я переопределяю его в классе библиотеки, чтобы сделать его общедоступным. Конструктор принимает 1 параметр. В приложении я создаю экземпляр этого одного параметра и передаю его конструктору в библиотеке, который не имеет собственного кода, только : base()
другому конструктору.
Я запускаю приложение в эмуляторе телефона Windows, и все идет хорошо. Приложение загружается, и я перемещаюсь по нескольким экранам.
Я ударил точку останова и прошел. Я приземляюсь в конструкторе библиотеки, но потом, когда я попытаюсь сделать еще один шаг, который будет в конструкторе PCL, я просто получаю исключение TypeLoadException, в котором говорится: «При загрузке типа произошел сбой». Трассировка стека останавливается в конструкторе библиотеки, и нет внутреннего исключения.
Я также пробовал эмулятор Windows Phone 7.8. И я также попытался создать новый экземпляр непосредственно в конструкторе класса библиотеки, используя конструктор без параметров, и просто сказал : base(new ...)
, но все это не так.
Я понятия не имею, как выяснить, в чем проблема, потому что я не знаю, что она может пытаться найти, что это недоступно. Я вижу библиотеку и сборки PCL, перечисленные в манифесте в каталоге сборки проекта.
My google fu подходит к концу. У кого-нибудь есть идеи, в которых я мог бы продолжать искать?
Спасибо.