Я пытаюсь декомпилировать библиотеку, но когда я нажимаю на имя класса или имя метода, код реализации пуст.
Например:
public bool MethodOne(string str)
{
// nothing
}
Что это может быть?
Ответ 1
Возможно, вы пытаетесь отобразить сборки ссылок, используемые Visual Studio, для поддержки поддержки нескольких таргетинга. Эти сборки являются только метаданными и не имеют реальной реализации.
Если это так, вы можете использовать расширение VSCommands 2010, чтобы получить путь к реальной сборке с реализацией.
Возможно, вы открыли ссылочную сборку или PIA, в которой нет кода.
Тело метода может быть пустым.
(Другие возможности?)
Ответ 3
Я тоже видел это со сборками VSSDK.
Это может быть общедоступная библиотека интерфейса, но фактическая реализация "где-то" скрыта. (Может быть, в GAC?)
Основной ход мысли:
Скомпилировать код с некоторой сборки "заглушки"
При загрузке в приложение узел заглушки не разрешен, но фактический
Я предлагаю вам установить точку останова в отладчике и посмотреть, что представляет собой фактическая загруженная сборка и откуда она загружена.
Ответ 4
Какая версия фреймворка .Net используется? Кажется, что возникает проблема с сборками .net 4.0, где это происходит... или это то, что говорят некоторые люди на форумах: Reflector Forum