Найти ссылку на пространство имен в Visual Studio - PullRequest
0 голосов
/ 11 марта 2019

Я работаю над проектом c #. Он ссылается на несколько пакетов, и есть пакеты, ссылающиеся на другие пакеты. Таким образом, пространство имен, используемое в программе, не обязательно происходит из прямой ссылки. Для конкретного оператора использования есть ли способ выяснить, из какой ссылки (под ссылкой я имею в виду внешние библиотеки DLL / пакеты NuGet) она возникла? Спасибо.

Например, ссылка на проект пакета Nuget с именем Package1. В Package1 у нас есть пространство имен с именем Namespace1. Затем Package1 ссылается на Package2, который имеет пространство имен с именем Namespace2. В вашем коде вы могли бы иметь

using Namespace2;

Но как вы узнаете, из какой сборки или пространства имен Nuget Package2 происходит (в данном случае Package1)?

1 Ответ

1 голос
/ 11 марта 2019

Я не знаю, как это сделать в Visual Studio.Однако JetBrains ReSharper может это сделать.Обратите внимание, что импорт одного пространства имен не привязан к одной сборке.Импорт пространства имен (с использованием оператора) может легко перенести типы из нескольких различных сборок в область действия.

Имея в руках ReSharper, я просто выбрал пространство имен и нажал F12.Вы можете видеть, что System.Collections.Generic определено в четырех сборках, на которые ссылается этот проект.

ReSharper namespace find

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