Заметки о выпуске Visual Studio 2022 Preview
Мы рады сообщить о доступности Visual Studio 2022 версии 17.14. Это обновление посвящено стабильности и безопасности, а также улучшениям ИИ для всех разработчиков.
Скачайте Visual Studio 2022 версии 17.14 Предварительная версия, чтобы воспользоваться этими новыми функциями и улучшениями.
Функции
Все новые возможности в последнем выпуске предварительной версии.
GitHub Copilot
модель завершения кода GPT-4o
Представляем модель завершения кода GPT-4o Copilot в общедоступной предварительной версии, чтобы предоставить более качественные завершения.
Мы рады сообщить, что новая модель завершения кода GPT-4o Copilot теперь доступна в Visual Studio 17.14 для пользователей GitHub Copilot! Эта усовершенствованная модель, основанная на GPT-4o mini, была дополнительно натренирована на более чем 275 000 высококачественных общедоступных репозиториях на более чем 30 популярных языках программирования. В результате разработчики могут рассчитывать на более точные предложения и повышение производительности.
Чтобы испытать новую модель, перейдите к Средства → параметры → GitHub → Copilot → Copilot Completions и выберите GPT-4o Copilot в раскрывающемся списке средства выбора моделей. Вы также можете получить доступ к настройкам, щелкнув значок GitHub Copilot в правом верхнем углу и выбрав Настройки → Опции. Обратите внимание, что впервые может возникнуть задержка при получении последнего списка моделей. Если вы не видите новую модель в раскрывающемся списке, попробуйте перезапустить Visual Studio.
![]()
Заметки о доступе GPT-4o Copilot:
- пользователи Copilot Pro: новая модель доступна для вас в версии 17.14 и более поздних.
- Пользователям Copilot Business или Enterprise: вашему администратору необходимо сначала включить эту модель для вашей организации, выбрав предварительный просмотр функций редактора в параметрах политики Copilot на github.com.
- Пользователи Copilot Free: использование этой модели будет засчитано в ваши 2000 бесплатных ежемесячных завершений.
Внимание
Активируйте GitHub Copilot Free и разблокируйте эти и другие функции ИИ. Никаких пробных периодов. Не нужна кредитная карта. Только ваша учетная запись на GitHub.
создание комментариев ИИ к документу
автоматически создавать документированные комментарии для функций C++ и C#.
Copilot теперь легко интегрирован в редактор кода Visual Studio, чтобы помочь вам в создании комментариев документации для функций.
При включении автоматического создания комментариев документов для проекта просто введите шаблон комментариев в соответствии с конфигурацией параметров (например,
///
), а Copilot автоматически завершит описание функции на основе содержимого функции.
![]()
Эта функция доступна для файлов проекта C++ и C#.
Внимание
Активируйте GitHub Copilot Free и разблокируйте эти и другие функции ИИ. Никаких пробных периодов. Не нужна кредитная карта. Только ваша учетная запись на GitHub.
Отладка и диагностика
Новый отладчик для приложений .NET MAUI
новый модуль отладки Mono для .NET MAUI, интегрированный в отладчик Visual Studio Core.
Новый отладчик Mono для приложений .NET MAUI — это новый модуль отладки, интегрированный в отладчик Visual Studio. Мы внесли в него существенные улучшения, чтобы повысить надежность и производительность и привести его функции в соответствие с другими компонентами Visual Studio.
Только мой код, в число наиболее значимых улучшений входит оценка переменных и выражений.
Чтобы воспользоваться данным решением, необходимо включить следующую предварительную версию функции Visual Studio: Включение нового отладчика .NET Mono для приложений MAUI
![]()
Эта функция доступна только для платформы Android. Поддержка iOS ожидается в ближайшее время.
Показывать подсказки данных для выражений LINQ 📣
Улучшенные возможности отладки выражений LINQ с показом подсказки при наведении указателя.
Создание и устранение неполадок запросов LINQ может быть емким и сложным процессом, часто требуя точных знаний синтаксиса и бесчисленных итераций. Для решения этих проблем в отладчик Visual Studio 2022 добавлена инструментальная подсказка LINQ, отображающаяся при наведении курсора.
Во время паузы в процессе отладки вы можете навести курсор на отдельные предложения или сегменты вашего запроса LINQ и оценить текущее значение запроса в момент выполнения.
Кроме того, можно щелкнуть значок GitHub Copilot в конце всплывающей подсказки DataTip, который выполнит Анализ с помощью Copilot на той части запроса, над которой вы наведёте указатель мыши. Затем Copilot объясняет синтаксис предложения и объясняет, почему вы получаете указанный результат.
![]()
Это существенно упрощает отладку и повышает ее эффективность, поскольку ускоряет выявление проблем с запросами LINQ и оптимизирует процесс разработки в целом.
📣 Ознакомьтесь с запросом на функцию, чтобы поделиться своими отзывами и продолжить беседу.
Zero-Length информация о выделении массивов
Средство выделения .NET теперь определяет создание массивов нулевой длины, повышая эффективность использования памяти и производительность.
Инструмент выделения .NET теперь предоставляет подробную аналитическую информацию о выделениях массивов нулевой длины, чтобы помочь вам выявить и оптимизировать ненужное использование памяти. На первый взгляд такие выделения потребляют немного ресурсов, однако если их накопится слишком много, то производительность может снизиться, особенно если речь идет о выполнении задач, требующих высокой производительности или с ограниченными ресурсами памяти.
![]()
Данное обновление позволяет вам исследовать выделения массивов нулевой длины. Для этого нажмите ссылку Исследовать, после чего откроется окно Представления выделений с подробной информацией о выделении. Если дважды щелкнуть, отобразятся пути кода, где происходят эти выделения памяти, что позволит вам внести точные оптимизации. Для повышения эффективности мы рекомендуем использовать
Array.Empty<T>()
— статически выделенный пустой экземпляр массива, чтобы устранить избыточные выделенные ресурсы памяти.
Инструменты Git
просмотр входящих и исходящих коммитов 📣
Окно репозитория Git теперь предоставляет фильтр на панели инструментов для отображения только исходящих и входящих коммитов.
Окно репозитория Git — это go-to место для понимания истории Git. При работе с локальной ветвью она может выйти из синхронизации с удалённым репозиторием, либо из-за того, что вы создаете новые коммиты (исходящие), либо из-за наличия новых коммитов, которые нужно извлечь (входящие).
С помощью нового исходящего/входящего фильтра, доступного на панели инструментов, вы можете мгновенно обнаружить такие несинхронизированные коммиты. Ваши коммиты, их коммиты — сканируйте легко и оставайтесь в идеальной синхронизации!
![]()
📣 Ознакомьтесь с запросом на функцию, чтобы поделиться своими отзывами и продолжить беседу.
Восстановление окна репозитория Git 📣
Сохранить окно репозитория Git открытым между перезапусками с помощью этого нового параметра.
В качестве вашей выделенной среды для операций с ветвями, окно репозитория Git , вероятно, является основой вашей повседневной разработки. Если вы часто открываете его с каждым сеансом Visual Studio, это обновление предназначено для экономии времени и усилий.
![]()
Мы добавили новый параметр для Git > settings для автоматического восстановления окна репозитория Git при перезапуске Visual Studio. Кроме того, окно будет включено в сохраненные макеты окон, повышая параметры настройки.
По умолчанию эта функция отключена, чтобы обеспечить плавность работы для тех, кто не нуждается в нем. Но если вам нравится удобство, этот параметр идеально подходит для вас.
![]()
📣 Ознакомьтесь с запросом на функцию, чтобы поделиться своими отзывами и продолжить беседу.
имя ветви по умолчанию 📣
Разрешить пользователям настраивать начальную ветвь по умолчанию при создании нового репозитория Git.
Теперь вы можете легко задать имя ветви по умолчанию для новых репозиториев Git непосредственно через Visual Studio. Этот новый параметр легко взаимодействует с конфигурацией Git, что упрощает настройку рабочего процесса.
![]()
Просто перейдите в Git > Settings, и при следующем создании репозитория вы увидите имя вашей пользовательской ветви в действии.
![]()
📣 Ознакомьтесь с запросом на функцию, чтобы поделиться своими отзывами и продолжить беседу.
Интегрированная среда разработки (IDE)
Улучшенная аутентификация NuGet
Обновление Набора средств TeamsNuGet теперь предоставляет контекст при запросе на предоставление учетных данных.
Мы усовершенствовали проверку подлинности с помощью NuGet. Теперь если мы выявляем возможные проблемы с проверкой подлинности, перед вами отображается новое диалоговое окно проверки подлинности с контекстом о канале и потребностях соответствующей учетной записи.
![]()
В этом обновлении мы усовершенствовали процедуру повторной проверки подлинности, если она многофакторная (MFA), устранили проблемы с последовательными запросами проверки подлинности и в целом оптимизировали управление частными каналами NuGet.
Teams Toolkit представил новые шаблоны проектов для создания агентов.
Мы рады сообщить, что в этом выпуске в инструменты Teams добавлены шаблоны проектов для создания декларативных агентов для Microsoft Copilot.
![]()
Декларативного агента можно создать как с действием, так и без него. Вы можете настроить новые API или использовать существующие, чтобы настроить действие, которое будет выполнять задачи или извлекать данные.
Пользуйтесь инструментами Teams для отладки и предварительного просмотра декларативных агентов в Microsoft Copilot.
Кроме того, в этом выпуске Teams Toolkit обновлены все шаблоны проектов, чтобы они поддерживали .NET 9.
![]()
Удачного программирования!
Команда разработчиков инструментов Teams
Сохранение настроек шрифта в темах 📣
Изменение тем теперь сохранит параметры шрифта и размера шрифта.
Мы понимаем, что выбор шрифтов, который разработчики делают при написании кода, является личным делом и зависит от предпочтений в удобочитаемости, доступности или эстетике. Темы Visual Studio в основном сосредоточены на цветах презентации и не зависят от предпочитаемых шрифтов.
В этом обновлении мы добавили возможность сохранять ваш выбор начертания и размера шрифта при смене тем. Теперь вы можете задать параметры шрифта один раз и переключить темы в Visual Studio, не перенастроив параметры шрифта каждый раз. Обратите внимание, что цвета шрифтов остаются связанными с темой, так как это предназначение тем, но выбранные шрифты будут сохранены.
![]()
Эта функция будет включена по умолчанию для всех пользователей. Если вы предпочитаете предыдущее поведение, перейдите к разделу Tools → Manage Preview Features и найдите параметр Разделять параметры шрифта от выбора цветовой темы. Если этот параметр установлен, параметры шрифта будут поддерживаться независимо от изменений темы. Снимите флажок, чтобы восстановить предыдущее поведение, которое связывает варианты шрифта с темой.
📣 Ознакомьтесь с заявкой на функцию, чтобы поделиться отзывами и продолжить беседу.
Рабочий стол
обновите пользовательский интерфейс в режиме реального времени во время проектирования 📣
Live Preview, Hot Reload и другие средства пользовательского интерфейса теперь доступны на этапе проектирования.
Теперь во время разработки доступна функция динамического просмотра, позволяющая в реальном времени визуализировать изменения в пользовательском интерфейсе приложения. Теперь таким образом также можно использовать горячую перезагрузку и другие интерактивные инструменты пользовательского интерфейса, обеспечивая плавный рабочий процесс.
Эти инструменты можно использовать, когда отладчик отключен, благодаря чему вы можете непрерывно проводить эксперименты и улучшать свои проекты.
Демонстрация
Чтобы во время разработки получить доступ к функции динамического просмотра из любого файла XAML, нажмите новый индикатор Динамический просмотр:
![]()
Эти улучшения помогут вам быстрее и увереннее предоставлять клиентам качественные приложения — как новые приложения .NET MAUI, так и улучшенные существующие приложения WPF.
📣 Ознакомьтесь с запросом на добавление функции, чтобы оставить отзыв и продолжить беседу.
новый шаблон проекта UWP .NET 9 MSTest 📣
Visual Studio теперь включает обновленный шаблон проекта MSTest UWP, предназначенный для .NET 9 и Нативного AOT.
Visual Studio теперь включает новый шаблон проекта UWP MSTest, предназначенный для .NET 9 и нативного AOT. Мы тесно сотрудничаем со специалистами из MSTest, чтобы обеспечить полную поддержку проектов UWP .NET 9 в библиотеках и инфраструктуре MSTest, а также на узле Visual Studio для тестирования. Благодаря этому теперь вы получили возможность тестировать проекты UWP для .NET 9 и использовать все современные инструменты из пакета SDK для .NET и MSTest, оставаясь в контексте UWP, как и предполагалось.
![]()
Вам по-прежнему будет доступен предыдущий шаблон проекта MSTest UWP, как и все прочие исходные шаблоны проектов UWP, в которых используется .NET Native. Тем не менее мы рекомендуем пользоваться новыми шаблонами проектов, которые ориентированы на .NET 9 и Native AOT. Как и в Visual Studio 17.13, мы соответствующим образом изменили порядок расположения шаблонов UWP и настроили функцию поиска так, чтобы в результатах приоритетными были шаблоны проектов .NET 9.
📣 Ознакомьтесь с запросом на функцию, чтобы поделиться своими отзывами и продолжить беседу.
Расширяемость
Установка пакетов расширений
установщик теперь может обрабатывать установку пакетов расширений.
Теперь установщик поддерживает пакеты расширений, которые являются пакетами нескольких расширений, на которые ссылается один модуль.
Чтобы использовать пакеты расширений в установщике, сначала укажите нужные расширения в VSCONFIG-файле. Затем используйте функцию импорта конфигурации установщика Visual Studio для импорта vsconfig-файла, содержащего сведения о расширении.
Дополнительные сведения о создании или генерации файлов .vsconfig см. в документации по конфигурациям установки .
После импорта VSCONFIG-файла вы будете перенаправлены на экран изменения, где расширения будут группироваться под собственным заголовком в области сводки установки. Здесь можно выбрать или отменить выбор всего пакета расширения или отдельных расширений в любом пакете.
установка расширения
установщика Visual Studio
Данные
Использование SQL-проектов в стиле SDK в SSDT 📣
Теперь можно использовать формат файла проекта в стиле пакета SDK в проектах SQL Server Data Tools с расширенными возможностями отладки и сравнения схем SQL.
В обновлении Visual Studio 17.14 представлены дополнительные шаблоны элементов и ссылки на базы данных .dacpac в инструменты SQL Server Data Tools в стиле SDK (предварительная версия). Проекты SSDT SQL в стиле SDK базируются на Microsoft.Build.Sql SDK, который обеспечивает кроссплатформенную поддержку и улучшенные возможности CI/CD для проектов SQL Server Data Tools (SSDT).
С менее подробными файлами проекта и ссылками на базы данных на пакеты NuGet команды могут более эффективно работать над большими базами данных в одном проекте или компилировать несколько наборов объектов из нескольких проектов. Развертывания баз данных из проекта Microsoft.Build.Sql можно автоматизировать в средах Windows и Linux, где средство Dotnet Microsoft.SqlPackage публикует артефакт сборки (DACPAC) из проекта SQL. Дополнительные сведения о SQL-проектах в стиле SDK и DevOps для SQL.
![]()
В версии 17.14 ссылки на базу данных были расширены — в них также вошли ссылки на проекты и артефакты DACPAC. Поддержка ссылок на БД в формате ссылок на пакеты появится в будущем. В недавнем выпуске генератора файлов решений slngen также была добавлена поддержка проектов Microsoft.Build.Sql, позволяющая управлять большими решениями программно.
Обязательно установите последний компонент предварительной версии SSDT в установщике Visual Studio, чтобы использовать проекты SQL в стиле ПАКЕТА SDK в решении.
![]()
📣 Ознакомьтесь с тикетом функции, чтобы поделиться своими отзывами и продолжить обсуждение.
C++
поддержка краткой информации для модулей CMake
добавлена поддержка модулей CMake в IntelliSense Quick Info и Completion.
Мы добавили поддержку завершения на основе IntelliSense и краткие сведения о модулях CMake в Visual Studio. Теперь вы можете просмотреть все доступные модули CMake и узнать больше из редактора Visual Studio.
Краткие сведения
При наведении указателя мыши на указанный модуль CMake IntelliSense может получить дополнительные сведения о выбранном модуле.
быстрой информации
Завершение
Когда вы начинаете вводить модуль CMake в
CMakeLists.txt
или других файлах скриптов CMake, IntelliSense предоставит список доступных модулей для выбора.
![]()
Основные исправления ошибок, сообщаемых пользователем
- Ошибка с использованием String::Format в проекте библиотеки классов CLR C++ (.NET)
- Ложноположительное предупреждение при анализе времени жизни кода C26847: Не возвращайте недопустимый указатель
- регрессия в версии 17.12.0: сбой подстановки является ошибкой C3699 при компиляции с помощью /CLR
- Покрытие санитайзера создает плохие результаты генерации кода
- ошибка компиляции в лямбда-выражениях в иерархиях с виртуальным наследованием
- установщику не удаётся выполнить обновление до версии 17.12.0 из-за ошибки выполнения скрипта PowerShell
- исключение обозревателя решений при изменении решения
Внимание
Критическое изменение было внесено в Domain-Specific языковой модели сериализацию. Разработчикам, использующим механизм сериализации по умолчанию для своих моделей, содержащих пользовательские типы свойств, потребуется добавить TypeConverters для этих типов настраиваемых свойств. Пример этого см. в настройке хранилища файлов и сериализации XML.
От всей команды спасибо за выбор Visual Studio! Чтобы узнать о последних обновлениях, ресурсах и новостях, ознакомьтесь с Visual Studio Hub и оставайтесь на связи.
Удачного программирования!
Команда Visual Studio
Примечание.
Это обновление может включать новое программное обеспечение Майкрософт или стороннее программное обеспечение, лицензированное отдельно, как указано в уведомлениях сторонних поставщиков или в соответствующей лицензии.