Отладка динамически созданного класса в Visual Studio & C # - PullRequest
3 голосов
/ 04 октября 2011

Мой проект использует библиотеку, которая, в свою очередь, использует Microsoft.Practices.Unity для динамического создания класса и запуска некоторых его методов.Этот класс выдает ошибку после его создания.

Могу ли я использовать отладчик Visual Studio для входа и отладки этого динамического класса?У меня есть Reflector Pro, который позволяет мне копать так далеко, как у меня.

Примечание : я уже пытался связаться с разработчиком библиотеки, которую я использую, и они, похоже, не хотятрешить эту проблему в настоящее время.Поэтому я сам пытаюсь в этом разобраться.


ОБНОВЛЕНИЕ

Я не имею в виду ключевое слово dynamic.Верхняя строка трассировки стека -

DynamicModule.ns.Wrapped_OpenAccessMetaDataProvider_bf5ed2b8ccd24dacab4923be24786366.Initialize(String providerName, NameValueCollection config, Type managerType) +506

Поиск в Google DynamicModule.ns.Wrapped_ ведет к классу Unity InterfaceInterceptorClassGenerator.Казалось бы, этот класс имеет смысл, учитывая, что он «используется для генерации прокси-классов ...».У меня возникают проблемы с поиском подходящего примера кода, потому что похоже, что существует существенная OO-инфраструктура вокруг конструкции этого класса.


ОБНОВЛЕНИЕ 2

Класс Unity вызывает исключение:

Невозможно загрузить один или несколько запрошенных типов,Получите свойство LoaderExceptions для получения дополнительной информации.

Исключение не имело свойства LoaderExceptions, так что это не помогает.Я не хотел увязывать вопрос с деталями, но вкратце это так: моя CMS (которая останется безымянной) использует устаревшую версию Facebook C # SDK.При обновлении сборок Facebook SDK эта ошибка выдается.Это имеет смысл, потому что SDK изменился.Я пытаюсь понять связь между классом OpenAccessMetaDataProvider и SDK Facebook.

1 Ответ

1 голос
/ 11 октября 2011

Я не эксперт по динамическим классам, но попробуйте System.Diagnostics.Debugger.Break () ...

...