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