Это может быть длинный выстрел, но у меня нет идей.Приложение зависает при вызове внешнего конструктора - шаги по устранению неполадок?
У меня есть VS C# решение с тремя проектами в нем. Существует проект библиотеки классов, а затем два приложения, которые зависят от этой библиотеки классов. Библиотека классов в свою очередь зависит от нескольких других DLL, включая avalonedit dll от проекта sharpdevelop.
Одним из приложений является создание и работа в порядке, в том числе использование моего собственного элемента управления, который обертывает элемент управления avalonedit. Другое приложение не работает, и оно, кажется, терпит неудачу в момент, когда элемент управления avalonedit инициализируется через XAML в моем элементе управления оберткой.
Проблема в том, что я вообще не вижу ошибок в отладочном выходе, все, что я вижу, - это сообщение, загруженное dll, а затем ничего. Если я вхожу в конструктор моего контроля, шаг никогда не завершается. Отладчик говорит, что приложение работает, но оно, по-видимому, вращается где-то в dll avalonedit, когда базовый элемент управления редактированием создается стороной XAML.
Я должен предположить, что есть какая-то проблема с разницей в окружающей среде между двумя проектами, но я немного зациклен на том, как продолжить отслеживание проблемы. Должен ли я как-то уладить вопросы, чтобы я мог переломить источник avalonedit?
Редактировать: Если я приостанавливаю/прерываю все, это просто возвращается к строке, вызывающей мой конструктор управления.
Что произойдет, если вы приостановите отладчик во время зависания? – SLaks
Здесь [Reflector] (http://www.red-gate.com/products/dotnet-development/reflector/) пригодится! – Mayank
Я предлагаю выбрать источник (и/или PDB) AvalonEdit, а затем нажать паузу в отладчике, чтобы увидеть проблему. Другим подходом было бы проверить источник конструктора avalonedit с использованием Reflector (по предложению Майанка), чтобы увидеть потенциальную причину цикла. – VinayC