перейти к определению в VS 2010 - PullRequest
1 голос
/ 23 ноября 2010

Что мне нужно сделать, чтобы перейти к нужному классу, а не к метаданным?

в Visual Studio 2010 во время работы над кодом C # Я щелкаю правой кнопкой мыши код, чтобы перейти к «Перейти к определению», иногда показываетправильный класс, где мой объект определен и иногда показывает мне метаданные, а не правильный класс ...

почему это так?

спасибо за вашу помощь

Ответы [ 4 ]

8 голосов
/ 23 ноября 2010

Он показывает вам исходный код класса, только если этот класс доступен в вашем решении. Если вы ссылаетесь на проект, источник которого у вас есть, вы можете добавить его в решение как ссылку на проект, и «Перейти к определению» должно вести себя так, как вы ожидаете. Если вы ссылаетесь на скомпилированную DLL, «Перейти к определению» будет отображать только метаданные.

3 голосов
/ 23 ноября 2010

если вы добавили ссылки на другой проект, кроме F12, то перейдете к фактическому исходному коду, но для DLL он перейдет к метаданным, если определите

1 голос
/ 23 ноября 2010

Как уже говорили другие, Visual Studio не может показать вам фактический исходный код для сборки, которая у вас есть только в скомпилированной форме (т.е. .exe или .dll).Если вам действительно нужно увидеть, как что-то реализовано, то вы можете использовать Reflector , чтобы декомпилировать его для вас, хотя полученный код, вероятно, будет менее понятен, чем оригинал (без комментариев, имена переменных будут потеряныи др.).

1 голос
/ 23 ноября 2010

Visual Studio перейдет к метаданным, когда ссылка является DLL или EXE - она ​​не «знает» об исходном коде.

Он перейдет к исходному коду, когда у вас есть ссылки на проект .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...