Как открыть обозреватель решений в visual studio 2019
Перейти к содержимому

Как открыть обозреватель решений в visual studio 2019

  • автор:

Отладка внешних источников с Visual Studio

Вам когда-нибудь приходилось отлаживать и работать с кодом зависимых библиотек NuGet или .NET, которые не являются частью вашего решения? Сегодня отладка через них не так проста, как отладка ваших проектов, которые являются частью вашего решения. Начиная с Visual Studio 2022 Preview 3, мы добавляем новый узел «Внешние источники» в обозреватель решений, который значительно упростит отладку файлов внешних источников. Этот узел появляется во время отладки и отображает источники для управляемых модулей с загруженными символами, содержащими информацию о Source Link или Source Server. Вы можете легко просматривать эти исходные файлы и отлаживать их, при необходимости устанавливая точки останова.

Команда Visual Studio 2022 работает над тем, чтобы обеспечить личную и командную продуктивность. Отладка внешних источников — это возможность инструментов диагностики, которая является лишь одной из интересных функций, над которыми мы работаем.

Узел «Внешние источники» в обозревателе решений

Эта функция добавляет новый узел верхнего уровня в обозреватель решений, который появляется, когда вы находитесь в сеансе отладки, и любой загруженный файл .pdb с информацией исходного сервера будет отображаться под этим узлом.

В режиме отладки - свернутое состояние (по умолчанию) В режиме отладки - развернутое состояние без модулей с символами вне загруженного решения В режиме отладки - с одним загруженным и расширенным внешним модулем

Вы можете искать файлы, разворачивая элементы дерева. Затем дважды щелкните элемент, чтобы загрузить файл с исходного сервера и открыть его в редакторе. Узел будет сохраняться с источниками модулей в сеансах отладки, если модули настроены на автоматическую загрузку символов.

Если вы работаете с приложениями с несколькими внешними библиотеками, компоненты которых опубликованы на исходных серверах, например Newtonsoft.Json, CsvHelper, xUnit.net и т.д., эта функция предоставит вам более простой способ просматривать эти источники и при необходимости отлаживать их.

Требуемые настройки

Загрузкой символов (Symbol loading) и загрузкой источника можно управлять с помощью параметров в настройках отладки.

Следуйте приведенному ниже контрольному списку настроек, чтобы убедиться, что модули могут отображаться в узле «Внешние источники» обозревателя решений.

  1. В Инструменты → Параметры → Параметры отладки: * Отключить только мой код: это позволит отладчику попытаться найти символы для кода за пределами вашего решения.
  2. В Инструменты → Параметры → Отладка → Параметры символов: * Включить Microsoft Symbol Server: это позволяет отладчику пытаться найти символы на Microsoft Symbol Server; * Включить сервер символов NuGet.org: это позволяет отладчику пытаться найти символы на сервере символов NuGet.org; * Включить загрузку всех модулей: это позволяет отладчику загружать символы для всех модулей. (Обратите внимание, что эти параметры загрузят все доступные символы, вы можете ограничить загрузку символов, выбрав «Загружать только указанные модули» и указав включенные модули.)
  3. Вам также может потребоваться проверить Отладка → Windows → Модули, чтобы увидеть, какие модули в настоящее время загружены в память, и загрузить их вручную, если это необходимо.
  4. Вам может быть предложено загрузить исходный код с сервера, если дважды щелкнуть элемент в «Узле внешних источников»; нажмите «Принять», и вы сможете просмотреть исходный код этого элемента в редакторе.
  • visual studio
  • visual studio 2022
  • отладка
  • microsoft
  • Блог компании Microsoft
  • Программирование
  • .NET
  • Visual Studio
  • Отладка

Знакомство с Visual Studio

уважаемые посетители блога, если Вам понравилась, то, пожалуйста, помогите автору с лечением. Подробности тут.

Исходя из того, что мы узнали при знакомстве с платформой .NET, для того, чтобы написать и выполнить приложение, написанное на языке C# нам понадобится одна из реализаций .NET, в состав которой будет входить CLR (общеязыковая среды выполнения), а также JIT-компилятор и текстовый редактор для написания кода программы.

В большинстве случаев разработчики используют интегрированные среды разработки — IDE (от англ. Integrated Development Environment). IDE значительно облегчает процесс разработки и содержит в себе все необходимые инструменты — от редактора кода с подсветкой синтаксиса до средств отладки, рефакторинга и профилирования приложений. Одной из наиболее популярных IDE для языка C# является Visual Studio.

Где скачать и сколько стоит Visual Studio?

Visual Studio — это полнофункциональная интегрированная среда разработки (IDE) для написания, отладки, тестирования и развертывания кода на различных языках, в том числе и на C#.

Скачать Visual Studio можно с сайта https://visualstudio.microsoft.com/ru/.

При этом, для работы вам доступно три редакции IDE:

  1. Community
  2. Professional
  3. Enterprise

Редакция Community предоставляется абсолютно бесплатно. При этом, на сайте Microsoft относительно этой редакции сказано дословно следующее:

Кому не хочется читать текст с картинки — ниже скопированный текст с сайта Microsoft

Для организаций: Visual Studio Community может использовать неограниченное число пользователей в организации в следующих случаях: в учебных аудиториях, для научных исследований или участия в проектах с открытым кодом. Для всех прочих сценариев использования: в некорпоративных организациях Visual Studio Community могут использовать до 5 пользователей. В корпоративных организациях (в которых используется более 250 ПК или годовой доход которых превышает 1 млн долларов США) использование запрещено, за исключением случаев, перечисленных выше (открытый код, научные исследования и учебные аудитории).

Соответственно, я скачал Visual Studio Community 2019 с которой и начну свой путь из Delphi в C# (и обратно, если потребуется).

Знакомство с Visual Studio

Создание нового проекта

При запуске Visual Studio Вы увидите следующее окно, в котором Вам предложат выбрать необходимое действие для дальнейшей работы — создать проект, клонировать репозиторий т.д.

По мере того, как вы будете использовать Visual Studio, в левой части этого окна будут появляться ссылки на ваши последние проекты для того, чтобы можно быстро их открыть и начать работу.

Допустим, нам необходимо создать новый проект «Hello, world» (не будем оригинальными). Для этого выбираем последний пункт списка справа «Создание проекта»

Перед вами откроется новое окно создания проекта, которое по умолчанию выглядит вот так:

Слева в списке отображаются последние использованные шаблоны проектов, а справа — все доступные шаблоны, в зависимости от того, какую конфигурацию Visual Studio вы выбрали при установке.

Для того, чтобы быстро находить необходимый вам шаблон проекта, доступны фильтры по языку программирования, платформе и типам проектов:

Например, чтобы создать проект консольного приложения на C# можно выбрать следующие значения фильтров:

  • Язык программирования: C#
  • Платформа: Windows
  • Тип проекта: Консоль

В результате, вы увидите в списке шаблонов всего два шаблона проектов:

  • Консольное приложение (.NET Core) для Windows, Linux и Mac OS
  • Консольное приложение (.NET Framework) для Windows

Выберем второй пункт (тот который .NET Framework) и нажмем кнопку «Далее».

На втором шаге нас попросят ввести:

  • Имя проекта
  • Расположение проекта
  • Имя решения
  • и выбрать платформу

Здесь, стоит сделать небольшое отступление и сказать, что под понятием «Решение» в Visual Studio понимается группа проектов (в RAD Studio и Delphi — это Project Group)

После того, как вы зададите название проекта, его расположение и название решения, то у вас на жестком диске будут созданы следующие директории:

  1. Директория, путь к которой Вы указали для расположения проекта (например, C:\Sources)
  2. Поддиректория с именем решения, например, если вы назвали решение «FirstSteps», то будет создана директория C:\Sources\FirstSteps
  3. Поддиректория с именем вашего проекта. Например, если вы назвали проект HelloWorld, то путь к файлам проекта будет C:\Sources\FirstSteps\HelloWorld

О том, какие файлы располагаются по умолчанию в директории с проектом, мы поговорим позже, когда познакомимся с устройством Visual Studio, а пока перейдем к дальнейшему изучению IDE.

Основные окна в Visual Studio

После того, как мы создали первый проект консольного приложения для Windows, перед нами откроется основное окно Visual Studio с примерно таким содержимым:

В целом, для тех, кто работал в RAD Sudio, внешний вид окна Visual Studio не должен вызвать никаких проблем, хотя здесь есть и свои значительные отличия. Итак, что у нас есть:

справа располагается «Панель элементов»:

Для консольного приложения эта панель пустая и не содержит ничего, кроме подсказки:

Далее идёт привычное нам окно исходного кода с вкладками под каждый модуль проекта. Так как у нас один модуль, то и вкладка пока у нас в окне кода одна:

В правой части окна IDE расположены следующие окна:

Обозреватель решений

Здесь мы можем увидеть, какие проекты входят в то или иное решение, посмотреть свойства проекта, модули, входящие в состав проекта и т.д. Например, если, находясь в окне «Обозреватель решений», раскрыть вкладку «Properties» и выбрать в списке файл AssemblyInfo.cs, то в окне кода появится содержимое файла:

Файл содержит комментарии на русском языке, поэтому разобраться с его содержимым можно относительно просто. Однако, если Вам необходимо посмотреть и изменить свойства проекта в более удобном виде, то можно выбрать в «Обозревателе решений» вкладку «Properties», нажать на ней правой кнопкой мыши и выбрать пункт «Открыть». В результате, откроется вкладка с настройками вашего первого проекта, сгруппированные по секциям «Приложение», «Сборка» и т.д.:

Здесь же, в «Обозревателе решений» достаточно удобно, на мой взгляд, реализована навигация по модулям проекта. Так, например, если мы раскроем вкладку с названием единственного нашего модули «Program.cs», то увидим какие классы содержит модуль, а также методы классов:

Соответственно, если выбрать в списке, например, метод Main, то этот метод будет выделен в окне с исходным кодом проекта.

Team Explorer

Здесь вы можете создать подключение, например, к репозиторию Git или GitHub. С содержимым этого окна и работой с репозиториями мы поговорим позднее.

Представление классов

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

Свойства

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

Средства диагностики

Окно расположено в правой части экрана и предоставляет нам различные средства для профилирования нашего приложения. Так, например, можно отследить загрузку ЦП, использование памяти и т.д.

В принципе, для первого знакомства с основными окнами Visual Studio информации достаточно. Теперь попробуем создать наше первое приложение.

Первое приложение в Visual Studio

Итак, если вы заплутали в окнах IDE, то, выберите «Обозреватель решений» и в этом окне щелкните мышкой по файлу Program.cs, чтобы в рабочей области появился исходный код нашей программы:

Напишем следующий код для метода Main:

Теперь нажмите F5 и увидите, что на экране появилось и быстро исчезло окно консоли Windows, что ожидаемо — программа выполнила необходимые действия и закрылась. Чтобы окно консоли не закрывалось, допишем код нашей программы следующим образом:

namespace HelloWorld < class Program < static void Main(string[] args) < Console.WriteLine("Hello, world!"); Console.ReadKey(); >>

Теперь снова нажмите F5 и увидите приветствие от нашего первого приложения на C#, а IDE перейдет в режим отладки в котором «Средства диагностики» будут показывать используемые нашим приложением ресурсы:

Чтобы приложение закрылось достаточно нажать любую клавишу на клавиатуре.

При написании кода нашей программы вы, возможно, заметили, что справа в окне исходного кода периодически появляется вот такой значок:

Таким образом Visual Studio предлагает нам какие-либо улучшения исходного кода. Например, вы можете увидеть эту лампочку, если подниметесь в самый верх исходного кода:

Судя по подсказке, можно спокойно удалить неиспользуемые директивы using. Выбираем во всплывающем окне ссылку «Показать возможные решения» и Visual Studio покажет, что можно безопасно удалить:

Применяем предложенное решение и IDE сама удалит лишний строки из модуля и наша программа станет выглядеть вот так:

using System; namespace HelloWorld < class Program < static void Main(string[] args) < Console.WriteLine("Hello, world!"); Console.ReadKey(); >> >

Вот так легко и просто мы создали наше первое консольное приложение в Visual Studio на языке C#.

уважаемые посетители блога, если Вам понравилась, то, пожалуйста, помогите автору с лечением. Подробности тут.

Как открыть обозреватель решений в visual studio 2019

Использование библиотек

В прошлой статье, я рассказывал о том, как создаются библиотеки классов, написанные на C#. Прочитайте ту статью и соберите собственную библиотеку, если Вы не хотите ограничится только теорией в этой статье. В этой статье, я расскажу как использовать уже созданные библиотеки (DLL) в своих программах. И так, к делу!

Давайте создадим новый проект консольного приложения (как создавать проекты консольных приложений, я рассказывал в уроке № 3 базового курса).

А теперь, в окне Visual Studio, в обозревателе решений, ищем группу «Ссылки» и раскрываем её, как показано на рисунке ниже.

Список внешних ссылок нового проекта

Список внешних ссылок нового проекта

А теперь, вызовем контекстное меню на пункте «Ссылки», и выберем в нем «Добавить ссылку», как показано на рисунке ниже.

Добавление ссылки в проект

Добавление ссылки в проект

В появившемся окне, выбираем, в левой области выбираем пункт «Обзор» и в низу окна, нажимаем на кнопку «Обзор», как показано на рисунке ниже.

Загрузка внешней библиотеки

Загрузка внешней библиотеки

В появившемся окне, перейти в папку, в которое лежит библиотека (DLL) созданная в предыдущей статье (ссылку на которую, я давал ранее), выбрать эту библиотеку и нажать на кнопку «Добавить», как показано на рисунке ниже.

Выбор нужной библиотеки

Выбор нужной библиотеки

После чего, нажать на кнопку «OK» в предыдущем окне. В результате, список ссылок проекта, будет пополнен еще одной:

Пополненный список ссылок проекта

Пополненный список ссылок проекта

Теперь, мы можем использовать в налей программе класс «INIManager» из подключенной библиотеки. Но перед этим, мы должны выполнить еще одну операцию. Рассмотрим фрагмент кода подключенной библиотеки (он остался у нас после предыдущей статьи):

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Runtime.InteropServices; namespace FirstDLL < public class INIManager < //Конструктор, принимающий путь к INI-файлу public INIManager(string aPath)

Обратите внимание на выделенную строку, это объявление пространства имен (namespace), как бы некого контейнера, в котором находится класс «INIManager». И мы не сможем воспользоваться классом, пока не укажем системе что нужно взять во внимание это пространство имен. Т.е. нам нужно подключить пространство имен в нашем проекте. Для этого, добавим строку «using FirstDLL;» в конец блока директив using, который расположен в самом начале основного файла проекта. Подключение нужного пространства имен показано ниже (интересующая строка кода выделена):

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using FirstDLL;

Вот теперь, можно использовать класс из подключенной библиотеки, а сделать это можно написав в методе «Main» такой код:

//Создание объекта, для работы с файлом INIManager manager = new INIManager("C:\\my.ini"); //Получить значение по ключу name из секции main string name = manager.GetPrivateString("main", "name"); //Вывести полученное имя в консоль Console.WriteLine(name); //Записать значение по ключу age в секции main manager.WritePrivateString("main", "age", "21");

Данный код будет работать, при условии наличия файла «my.ini» на диске «C» нашего ПК. Вот такой вот пример работы со внешними библиотеками.

При создании проекта вместо запуска или отладки появляется Присоединение, а обозреватель решений не показывает проект

Доброго времени суток. Недавно начал изучать программирование на c# в visual studio 2019. Для обучения пользовался консольным .NET Framework и всё было хорошо. Однако когда я попытался создать проект в .NET Core, то увидел непонятную картину, проект запустить нельзя, так как опции Отладка и Запуск без отладки не активны, вместо них горит Присоединение, а также в обозревателе решений нет ни одного проекта, и не появляются если вручную добавить ещё один на .NET Core. Буду благодарен если подскажете что с этим можно сделать.

Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Не появляется меню Обозреватель решений
При запуске проекта в правой колонке не появляется пункт образователь решений ( который показывает.

Присоединение вместо отладки, как бороться?
Добрый День! Имеется такая проблема: По поиску в интернете уже и из реестра удалял некоторые.

Как включить проект в обозреватель решений?
Доброе утро. Подскажите как включить все скрипты из Unity в обозреватель решений на Visual Studio.

Присоединение вместо запуска
Вместо запуска отладки кода появилось присоединение к процессу. что с ним делать?

Администратор

Эксперт .NET

16392 / 12871 / 5072
Регистрация: 17.03.2014
Сообщений: 26,183
Записей в блоге: 1

Keralak, скриншоты 2,3 сделаны сразу после первого? Потому что выглядит так что вы создали решение, закрыли его или VS, а потом открыли Program.cs вместо того чтобы открыть проект (*.csproj файл).

Регистрация: 02.08.2018
Сообщений: 13
Да, сразу после первого, ничего не закрывал
Регистрация: 02.08.2018
Сообщений: 13

Хмм, а если попробовать такой проект сохранить и потом открыть csproj из папки с проектом то получается следующее, о чём это может говорить?

Администратор

Эксперт .NET

16392 / 12871 / 5072
Регистрация: 17.03.2014
Сообщений: 26,183
Записей в блоге: 1

Keralak, шаблон проекта есть, а открыть его студия не может. Никогда с таким не сталкивался. Запустите инсталлер студии и проверьте установлена ли поддержка .NET Core. Если нет, установите. Если да, то выполните команду починки.

Регистрация: 02.08.2018
Сообщений: 13

.Net Core вроде включена. Попробовать выполнить починку, ничего не дало, всё те же проблемы. Так же пробовал переустановить пакеты sdk для .net core с сайта майкрософта, тоже ничем не помогло.

Администратор

Эксперт .NET

16392 / 12871 / 5072
Регистрация: 17.03.2014
Сообщений: 26,183
Записей в блоге: 1
Keralak, покажите содержимое своего файла проекта. Интересно под именно .NET Core он создается.
Регистрация: 02.08.2018
Сообщений: 13

Возможно не совсем вас понял. Если открыть проект в расширении csproj через блокнот то выдает следующее (скрин 1). Если же открывать в расширении sln, то открывается тот же код что и сохранял, с теми же проблемами (скрин 2). Там стандартный хэлловорд, пробовал менять на что-то другое, результат тот же. Если же открывать csproj через visual studio, то выскакивает ошибка которую скидывал в прошлый раз. Да, и ещё папка с проектом выглядит как-то бедно (скрин 3), нету папок bin, obj, properties, как в сохраненных проектах на .net framework, который у меня работает нормально, возможно на .net core так и должно выглядеть, я не очень разбираюсь.

Регистрация: 02.08.2018
Сообщений: 13
Проблему решила только переустановка windows)
1011 / 670 / 169
Регистрация: 09.09.2011
Сообщений: 2,048
Записей в блоге: 2

ЦитатаСообщение от Keralak Посмотреть сообщение

Проблему решила только переустановка windows)

Это вообще была не проблема. И уж точно не переустановкой всего Windows решается. Как минимум хватило бы Visual Studio.

А проблема простая. Кто-то совсем не понимает что открывает и зачем.
По крайней из того что я проверил, визуально так и выглядело.

В первом сообщении студия открыта через Каталог. Но повидимому даже файл не был добавлен в проект. Если включить отображение недобавленных — уверен он отобразится в списке.

Во втором сообщении — студия открыта через Файл. В таком случае разумеется не видно ничего вообще и сделать ничего нельзя. Тупо блокнот редактор.

Подозреваю что кто-то после создания проекта (его просто невозможно криво создать), удалил файл SLN, а потом ещё и пересоздал csproj руками. Или же тоже внутри почистил команды. Ну иначе это никак не оправдать.

Регистрация: 02.08.2018
Сообщений: 13

Ничего не удалял и не редактировал. Я действительно новичок и многого не понимаю, но думаю что вы неправы. Файл я создавал через файл=>создать, создавать пробовал не один раз (и не один десяток). Пробовал добавлять проект в созданное решение, если оно было на .net core, то проект просто не добавлялся. Пробовал запускать все эти сохраненные проекты (и те в которых я хоть какую-то прогу написал, и где остался стандартный хэллоуворлд) по разному, нифига. Естественно я пробовал переустанавливать visual (как с помощью починки, так и просто удалить и установить по новой). Так же пробовал добавлять различные отдельные компоненты, которые хоть как-то могли были быть связаны с .net core. После переустановки Windows первым же делом скачал visual и попробовал создать проект на .net core, абсолютно стандартным образом, как и всегда пробовал. Всё получилось без каких либо проблем. Собственно и дальше без каких либо проблем с созданием, сохранением и открытием учу c# на .net core. Так что если кто-то когда либо в будущем отроет эту тему с аналогичной проблемой, то не слушайте подобных умников, проблема где-то куда глубже чем банальное неумение создавать проект, мне с нормальным решением этой проблемы не помогли, но по крайней мере кардинальная переустановка винды помогает.

1011 / 670 / 169
Регистрация: 09.09.2011
Сообщений: 2,048
Записей в блоге: 2

ЦитатаСообщение от Keralak Посмотреть сообщение

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

Просто это слишком кардинальная мера. Если это и была ошибка — то студии. И вероятно вскоре бы вышла версия с исправлением.
Ради интереса спрошу — до этого и сейчас идентичные версии VS?

Регистрация: 02.08.2018
Сообщений: 13

Да, и тогда и сейчас 2019

Добавлено через 11 минут
В любом случае сейчас всё работает хорошо и понять в чём причина нельзя. Я грешу на проблемы именно с .net core. Я на этой винде как-то пытался запускать древнющие игры и вроде бы для этого скачивал древнющий .net, возможно он как-то конфликтует с новым или вроде того, но ручная переустановка пакетов sdk для .net core ничего не дала. Также раньше стояла версия visual studio 2017, которую я удалил, скачал 2019, но возможно она криво удалилась и что-то от неё осталось что корябило работу. Хз, слишком мало опыта чтобы вручную с этим всем копаться, так что сделал мув, который всегда решал любые проблемы)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *