Visual Studio Icon Notes de publication de Visual Studio 2019 version 16.7Visual Studio 2019 version 16.7 Release Notes



Communauté des développeurs | Configuration système requise | Compatibilité | Code distribuable | Termes du contrat de licence | Blogs | Problèmes connus de la dernière versionDeveloper Community | System Requirements | Compatibility | Distributable Code | License Terms | Blogs | Latest Release Known Issues


Cliquez sur le bouton pour télécharger la dernière version de Visual Studio 2019.Click a button to download the latest version of Visual Studio 2019. Pour des instructions sur l’installation et la mise à jour de Visual Studio 2019, consultez Mettre à jour Visual Studio 2019 vers la version la plus récente.For instructions on installing and updating Visual Studio 2019, see the Update Visual Studio 2019 to the most recent release. Consultez également les instructions sur l’installation en mode hors connexion.Also, see instructions on how to install offline.

Community Download Button Professional Download Button Enterprise Download Button


Nouveautés de Visual Studio 2019 version 16.7What's New in Visual Studio 2019 version 16.7

Délai de prise en chargeSupport Timeframe

Visual Studio 2019 version 16.7 est la troisième base de référence de maintenance prise en charge pour Visual Studio 2019.Visual Studio 2019 version 16.7 is the third supported servicing baseline for Visual Studio 2019. Les clients d’entreprise et professionnels qui ont besoin d’adopter un environnement de développement sécurisé et stable à long terme sont encouragés à se normaliser sur cette version.Enterprise and Professional customers needing to adopt a long term stable and secure development environment are encouraged to standardize on this version.   Comme expliqué plus en détails dans notre politique de support et de cycle de vie, la version 16.7 sera supportées avec les correctifs et les mises à jour de sécurité pendant un an après la publication de la prochaine base de référence de maintenance.As explained in more detail in our lifecycle and support policy, version 16.7 will be supported with fixes and security updates for one year after the release of the next servicing baseline.

En outre, maintenant que la version 16.7 est disponible, la version 16.4, qui était la dernière base de référence de maintenance, sera supportée pendant 12 mois supplémentaires, ce support s’arrêtant en octobre 2021.In addition, now that version 16.7 is available, version 16.4, which was the last servicing baseline, will be supported for an additional 12 months and will go out of support in October 2021. Notez également que les versions 16,5 et 16,6 ne sont plus prises en charge.Note as well that versions 16.5 and 16.6 are no longer under support either. Ces mises en production intermédiaires ont reçu des correctifs de maintenance uniquement jusqu’à la mise en production de la mise à jour mineure suivante.These intermediary releases received servicing fixes only until the next minor update released.

Vous pouvez obtenir la dernière version la plus sécurisée de Visual Studio 2019 version 16.7 dans la section des téléchargements de my.visualstudio.com.You can acquire the latest most secure version of Visual Studio 2019 version 16.7 in the downloads section of my.visualstudio.com.   Pour plus d’informations sur les lignes de base prises en charge par Visual Studio, consultez la stratégie de support pour Visual Studio 2019.For more information about Visual Studio supported baselines, please review the support policy for Visual Studio 2019.

Publications de Visual Studio 2019 version 16.7Visual Studio 2019 version 16.7 Releases

Notes de publication archivées de Visual Studio 2019Visual Studio 2019 Archived Release Notes

Blog Visual Studio 2019Visual Studio 2019 Blog

Le blog Visual Studio 2019 est la source officielle où l’équipe d’ingénierie de Visual Studio partage des insights sur le produit.The Visual Studio 2019 Blog is the official source of product insight from the Visual Studio Engineering Team. Vous trouverez des informations détaillées sur les versions de Visual Studio 2019 dans les billets de blog suivants :You can find in-depth information about the Visual Studio 2019 releases in the following posts:


Release Notes Icon Visual Studio 2019 version 16.7.10Visual Studio 2019 version 16.7.10 New release icon

Publication : 12 janvier 2021released January 12, 2021

Dans cette mise en production de Visual Studio 2019 version 16.7.10In this Release of Visual Studio 2019 version 16.7.10

Avis de sécurité MicrosoftSecurity Advisory Notice

CVE-2021-1651 / CVE-2021-1680Vulnérabilité d’élévation de privilège du service Collecteur standard du hub de diagnostic CVE-2021-1651 / CVE-2021-1680 Diagnostics Hub Standard Collector Service Elevation of Privilege Vulnerability

Une vulnérabilité avec élévation de privilège existe quand le service Collecteur standard du hub de diagnostic ne gère pas correctement les opérations de données.An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector incorrectly handles data operations.

CVE-2020-26870 Vulnérabilité liée à l’exécution de code à distance de Visual Studio Installer CVE-2020-26870 Visual Studio Installer Remote Code Execution Vulnerability

Une vulnérabilité liée à l’exécution de code à distance existe lorsque Visual Studio Installer tente d’afficher du code markdown malveillant.A remote code execution vulnerability exists when the Visual Studio Installer attempts to show malicious markdown.

CVE-2021-1723 Vulnérabilité de déni de service de .NET Core et Visual Studio CVE-2021-1723 .NET Core and Visual Studio Denial of Service Vulnerability

Une vulnérabilité de déni de service existe dans l’implémentation de Kestrel.A denial of service vulnerability exists in the implementation of Kestrel.


Release Notes Icon Visual Studio 2019 version 16.7.9Visual Studio 2019 version 16.7.9

Publication : 8 décembre 2020released December 08, 2020

Dans cette mise en publication de Visual Studio 2019 version 16.7.9In this Release of Visual Studio 2019 version 16.7.9

Avis de sécurité MicrosoftSecurity Advisory Notice

CVE-2020-17156 Vulnérabilité liée à l’exécution de code à distance de Visual Studio CVE-2020-17156 Visual Studio Remote Code Execution Vulnerability

Une vulnérabilité d’exécution de code à distance existe lorsque Visual Studio clone un référentiel malveillant.A remote code execution vulnerability exists when Visual Studio clones a malicious repository.


Release Notes Icon Visual Studio 2019 version 16.7.8Visual Studio 2019 version 16.7.8

Publication : 10 novembre 2020released November 10, 2020

Dans cette mise en publication de Visual Studio 2019 version 16.7.8In this Release of Visual Studio 2019 version 16.7.8

Avis de sécurité MicrosoftSecurity Advisory Notice

CVE-2020-17100 Vulnérabilité de falsification Visual Studio CVE-2020-17100 Visual Studio Tampering Vulnerability

Une vulnérabilité de falsification existe lorsque Python Tools pour Visual Studio crée le dossier python27.A tampering vulnerability exists when the Python Tools for Visual Studio creates the python27 folder. Un attaquant parvenant à exploiter cette vulnérabilité pourrait exécuter des processus dans un contexte élevé.An attacker who successfully exploited this vulnerability could run processes in an elevated context.



Release Notes Icon Visual Studio 2019 version 16.7.7Visual Studio 2019 version 16.7.7 New release icon

Publication : 27 octobre 2020released October 27, 2020

Dans cette publication de Visual Studio 2019 version 16.7.7In this Release of Visual Studio 2019 version 16.7.7



Release Notes Icon Visual Studio 2019 version 16.7.6Visual Studio 2019 version 16.7.6

Publication : 13 octobre 2020released October 13, 2020

Dans cette publication de Visual Studio 2019 version 16.7.6In this Release of Visual Studio 2019 version 16.7.6



Release Notes Icon Visual Studio 2019 version 16.7.5Visual Studio 2019 version 16.7.5

Date de publication : 29 septembre 2020released September 29, 2020

Dans cette publication de Visual Studio 2019 version 16.7.5In this Release of Visual Studio 2019 version 16.7.5



Release Notes Icon Visual Studio 2019 version 16.7.4Visual Studio 2019 version 16.7.4

Date de publication : 21 septembre 2020released September 21, 2020

Dans cette publication de Visual Studio 2019 version 16.7.4In this Release of Visual Studio 2019 version 16.7.4


  • Ajoute la prise en charge de Xcode 12.0 GM.Adds Xcode 12.0 GM support.
  • Ajoute la prise en charge de la définition d’un jeu de couleurs comme couleur d’accentuation dans l’éditeur Info.plist.Adds support for setting a Color set as Accent Color in the Info.plist editor.

Release Notes Icon Visual Studio 2019 version 16.7.3Visual Studio 2019 version 16.7.3

Publication : 8 septembre 2020released September 08, 2020

Dans cette publication de Visual Studio 2019 version 16.7.3In this Release of Visual Studio 2019 version 16.7.3


Avis de sécurité MicrosoftSecurity Advisory Notice

CVE-2020-1130 Vulnérabilité liée à l’élévation de privilèges du Collecteur standard du hub de diagnostic CVE-2020-1130 Diagnostics Hub Standard Collector Elevation of Privilege Vulnerability

Une vulnérabilité avec élévation de privilège existe quand le service Collecteur standard du hub de diagnostic ne gère pas correctement les opérations de données.An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector improperly handles data operations. Un attaquant parvenant à exploiter cette vulnérabilité pourrait exécuter des processus dans un contexte élevé.An attacker who successfully exploited this vulnerability could run processes in an elevated context.

CVE-2020-1133 Vulnérabilité liée à l’élévation de privilèges du collecteur standard du hub de diagnostic CVE-2020-1133 Diagnostics Hub Standard Collector Elevation of Privilege Vulnerability

Une vulnérabilité avec élévation de privilège existe quand le Collecteur standard du hub de diagnostic ne gère pas correctement les opérations de fichiers.An elevation of privilege vulnerability exists when the Diagnostics Hub Standard Collector improperly handles file operations. Un attaquant parvenant à exploiter cette vulnérabilité pourrait exécuter des processus dans un contexte élevé.An attacker who successfully exploited this vulnerability could run processes in an elevated context.

CVE-2020-16856 Vulnérabilité liée à l’exécution de code à distance de Visual Studio CVE-2020-16856 Visual Studio Remote Code Execution Vulnerability

Une vulnérabilité d’exécution de code à distance existe dans Visual Studio quand il gère de manière incorrecte des objets en mémoire.A remote code execution vulnerability exists in Visual Studio when it improperly handles objects in memory. Un attaquant qui parvient à exploiter cette vulnérabilité peut exécuter du code arbitraire dans le contexte de l’utilisateur actuel.An attacker who successfully exploited the vulnerability could run arbitrary code in the context of the current user.

CVE-2020-16874 Vulnérabilité liée à l’exécution de code à distance de Visual Studio CVE-2020-16874 Visual Studio Remote Code Execution Vulnerability

Une vulnérabilité d’exécution de code à distance existe dans Visual Studio quand il gère de manière incorrecte des objets en mémoire.A remote code execution vulnerability exists in Visual Studio when it improperly handles objects in memory. Un attaquant qui parvient à exploiter cette vulnérabilité peut exécuter du code arbitraire dans le contexte de l’utilisateur actuel.An attacker who successfully exploited the vulnerability could run arbitrary code in the context of the current user.

CVE-2020-1045 Vulnérabilité permettant de contourner les fonctionnalités de sécurité dans Microsoft ASP.NET Core CVE-2020-1045 Microsoft ASP.NET Core Security Feature Bypass Vulnerability

Il existe dans Microsoft ASP.NET Core une vulnérabilité qui permet de contourner les fonctionnalités de sécurité et qui est due à la manière dont les noms de cookies encodés sont analysés.A security feature bypass vulnerability exists in the way Microsoft ASP.NET Core parses encoded cookie names. L’analyseur de cookie ASP.NET Core décode les chaînes de cookie entières, ce qui peut permettre à un attaquant de définir un deuxième cookie dont le nom est encodé en pourcentage.The ASP.NET Core cookie parser decodes entire cookie strings which could allow a malicious attacker to set a second cookie with the name being percent encoded.

Autres problèmes résolus dans cette versionAdditional Issues Fixed in this Release

  • Correction d’un plantage du compilateur pour les instructions switch ou les expressions switch utilisant une correspondance de modèle.Fixed a compiler crash for switch statements or switch expressions that use pattern matching.
  • Restauration du workflow « Arrêter le débogage (Maj+F5) » pour les tests unitaires en terminant la série de tests.Restored the "Stop Debugging(Shift +F5)" workflow for Unit Testing by terminating the test run.
  • Résolution du problème de plantage de VS lors du basculement de la configuration de projet quand le concepteur WinForms .NET Core a des modifications non enregistrées.Prevent VS crash on switching project configuration when WinForms .NET Core designer has unsaved changes.
  • Les versions de .NET Core qui ne sont plus supportées ne seront plus réinstallées lors d’une réparation ou d’une mise à niveau si elles ont été supprimées en dehors du programme d’installation de Visual Studio.Out of support versions of .NET Core will no longer be reinstalled during a repair or upgrade if they were removed outside of VS setup.
  • Résolution d’un problème où les dépendances externes n’étaient pas correctement recherchées dans Rechercher dans les fichiers.Fixed an issue where External Dependencies weren't accurately searched in Find in Files.
  • Réintroduction du bouton « Valider ... » dans le sous-menu Git du menu contextuel de l’Explorateur de solutions.Reintroduced the "Commit..." button in the Git submenu in Solution Explorer's context menu.
  • Correction d’un bogue qui faisait que l’étiquette des notes d’archivage TFVC était invisible.Fixed a bug that caused the TFVC Check-in Notes label to be invisible.
  • Correction du plantage lors de l’utilisation du concepteur WinForm dans un csproj de style SDK avec plusieurs frameworks cibles.Fix crash when using WinForm designer in SDK-style csproj with multiple target frameworks.
  • Correction du problème où <d:Style.DataContext> signalait une erreur de balisage non valide.Fixed issue where <d:Style.DataContext> was reporting an invalid markup error.

Principaux problèmes de Developer Community corrigés dans Visual Studio 2019 version 16.7.3Top Issues Fixed from Developer Community in Visual Studio 2019 version 16.7.3


Release Notes Icon Visual Studio 2019 version 16.7.2Visual Studio 2019 version 16.7.2

mise en production le 18 août 2020released August 18, 2020

Dans cette mise en production de Visual Studio 2019 version 16.7.2In This Release of Visual Studio 2019 version 16.7.2


Principaux problèmes de Developer Community corrigés dans Visual Studio 2019 version 16.7.2Top Issues Fixed from Developer Community in Visual Studio 2019 version 16.7.2


Release Notes Icon Visual Studio 2019 version 16.7.1Visual Studio 2019 version 16.7.1

mise en production le 11 août 2020released August 11, 2020

Dans cette mise en production de Visual Studio 2019 version 16.7.1In This Release of Visual Studio 2019 version 16.7.1


Principaux problèmes de Developer Community corrigés dans Visual Studio 2019 version 16.7.1Top Issues Fixed from Developer Community in Visual Studio 2019 version 16.7.1


Release Notes Icon Visual Studio 2019 version 16.7.0Visual Studio 2019 version 16.7.0

Date de publication : 5 août 2020released August 5, 2020

Dans cette version de Visual Studio 2019 version 16.7.0In This Release of Visual Studio 2019 version 16.7.0


C++C++

  • Notre prise en charge de C++ à distance accepte désormais une gamme plus étendue de distributions et shells Linux, notamment sh, csh, bash, tsch, ksh, zsh et dash.Our remote C++ support now supports a wider range of Linux distros and shells, including sh, csh, bash, tsch, ksh, zsh, and dash. Vous pouvez remplacer le choix d’un shell pour une connexion à distance en modifiant la nouvelle propriété « shell » via ConnectionManager.exe.You can override the choice of a shell for a remote connection by modifying the new "shell" property via ConnectionManager.exe. Cette prise en charge a été testée avec des projets Linux basés sur MSBuild et des projets CMake ciblant un système Linux distant ou WSL.This support has been tested with both MSBuild-based Linux projects and CMake projects targeting a remote Linux system or WSL.
  • Vous pouvez maintenant utiliser Ninja (un système de génération qui évalue très rapidement les builds incrémentielles) afin d’améliorer les temps de génération incrémentielle pour les projets Linux basés sur MSBuild.You can now use Ninja (a build system that evaluates incremental builds very quickly) to improve incremental build times for MSBuild-based Linux projects. Vous pouvez choisir cette fonctionnalité en affectant à « Activer la build incrémentielle » la valeur « Avec Ninja » dans la page de propriétés Général.You can opt into this feature by setting "Enable Incremental Build" to "With Ninja" in the General Property Page. Ninja (ninja-build) doit être installé sur votre système Linux distant ou WSL.Ninja (ninja-build) must be installed on your remote Linux system or WSL.
  • Les nouvelles fonctionnalités de bibliothèque standard C++20 ont été implémentées.New C++20 Standard Library features have been implemented. Pour obtenir une liste détaillée, consultez Journal des modifications STL sur GitHub.Please refer to the STL Changelog on GitHub for a detailed list.
  • Vous pouvez maintenant modifier et définir des connexions SSH à distance par défaut dans le Gestionnaire des connexions.You can now edit and set default remote SSH connections in the Connection Manager. Cela signifie que vous pouvez modifier une connexion à distance existante (par exemple, si son adresse IP a changé) et définir des connexions par défaut à consommer dans CMakeSettings.json et launch.vs.json.This means you can edit an existing remote connection (e.g. if its IP address changed) and set default connections to be consumed in CMakeSettings.json and launch.vs.json. Les connexions SSH à distance vous permettent de générer et de déboguer des projets C++ sur un système Linux distant directement à partir de Visual Studio.Remote SSH connections allow you to build and debug C++ projects on a remote Linux system directly from Visual Studio.
Edit remote connections in the Connection Manager
Modifier des connexions à distance dans le Gestionnaire de connexionsEdit remote connections in the Connection Manager
  • Prise en charge améliorée d’IntelliSense pour Clang sur Windows (Clang-CL) dans Visual Studio.Enhanced IntelliSense support for Clang on Windows (clang-cl) in Visual Studio. Le chemin clang include inclut maintenant les bibliothèques clang, nous avons amélioré l’affichage des tildes dans l’éditeur lors de l’utilisation de la bibliothèque std, et nous avons ajouté la prise en charge de C++2a en mode clang.The clang include path now includes the clang libraries, we've improved in-editor squiggle display when using the std library, and we've added support for C++2a in clang mode.
  • Vous pouvez maintenant essayer le soulignement des erreurs de code et voir plus de suggestions de correctifs rapides dans les projets C ++.You can now try out underlining code errors and see more suggested quick fixes in C++ projects.  Activez cette fonctionnalité sous Outils > Options > Éditeur de texte > C/C++ > Expérimental > Définir « Désactiver le linter du code expérimental » sur false.Enable this feature under Tools > Options > Text Editor > C/C++ > Experimental > Set 'Disable Experimental Code Linter' to false. Pour en savoir plus, consultez le blog de l’équipe C++.Learn more on the C++ Team Blog.
IntelliSense code linter
Linter de code IntelliSenseIntelliSense code linter
  • Nous avons ajouté quatre nouvelles règles d’analyse du code pour incorporer des fonctionnalités de sécurité supplémentaires dans C++ : C26817, C26818, C26819 et C26820.We've added four new code analysis rules to incorporate additional safety features into C++: C26817, C26818, C26819, and C26820.
  • Nous avons ajouté une prise en charge de premier ordre pour le débogage des projets CMake sur des systèmes distants avec gdbserver.We've added first-class support for debugging CMake projects on remote systems with gdbserver.
  • Recherchez facilement les erreurs d’altération de la mémoire avec une implémentation expérimentale d’AddressSanitizer pour C++ dans Visual Studio, désormais disponible pour les projets x64 natifs.Find memory corruption errors easily with an experimental implementation of AddressSanitizer for C++ in Visual Studio, now available for x64 native projects. Nous prenons également en charge l’utilisation des runtimes de débogage (/MTd, /MDd, /LDd).We also now support the use of debug runtimes (/MTd, /MDd, /LDd).
  • IntelliSense offre désormais une prise en charge de base pour les concepts, les initialiseurs désignés et plusieurs autres fonctionnalités de C++20.IntelliSense now has basic support for Concepts, designated initializers, and several other C++20 features.
  • Les fichiers .ixx et .cppm sont désormais reconnus comme étant du C++, et seront traités comme tels par le surligneur de syntaxe et par IntelliSense..ixx and .cppm files are now recognised as C++ and will be treated as such by the syntax highlighter and IntelliSense.

Définir des playlists de manière dynamiqueDefine playlists dynamically

Vous pouvez maintenant définir des playlists de manière dynamique en fonction du projet, de la classe ou de l’espace de noms.You can now define playlists dynamically based on Project, Class, or Namespace. Cela signifie que vous pouvez configurer une playlist pour inclure tous les éléments d’un projet/d’une classe/d’un espace de noms spécifique. Tout nouveau test ajouté à ce groupe sera automatiquement inclus dans votre playlist.This means you can configure a playlist to include everything in a certain project/class/namespace; any new test added to that group will automatically be included in your playlist!

  • Créez une playlist en cliquant avec le bouton droit sur un regroupement de projets, d’espaces de noms ou de classes dans l’Explorateur de tests.Create a playlist by right clicking on a project, namespace, or class grouping in the Test Explorer.
Test Explorer: Create a playlist
Explorateur de tests : Créer une playlistTest Explorer: Create a playlist
  • Modifiez les groupes inclus dans la playlist en cliquant sur le bouton Modifier dans la barre d’outils.Edit what groups are included in the playlist by clicking on the edit button in the tool bar. Des cases à cocher s’affichent.Check boxes will appear. Modifiez les groupes selon vos besoins.Edit groups as desired.
Test Explorer: Edit a playlist
Explorateur de tests : Modifier une playlistTest Explorer: Edit a playlist
  • Au lieu d’être une liste statique de tests, ces playlists sont mises à jour de manière dynamique en fonction des règles.Instead of being a static list of tests these playlists dynamically update based on rules. Si vous souhaitez mieux comprendre les règles qui génèrent votre playlist dynamique, enregistrez le fichier de playlist sur disque avec le bouton Enregistrer et affichez les règles générées dans le code xml.If you want to better understand what rules are generating your dynamic playlist, save the playlist file to disk with the save button and view the rules generated in the xml.
PlayList file dynamic rule set
Ensemble de règles dynamiques du fichier de playlistPlayList file dynamic rule set
  • Vous pouvez continuer à inclure/exclure des tests individuels et la playlist pourra soit mettre à jour ses règles dynamiques, soit revenir en arrière pour assurer le suivi des tests sous forme de liste statique.You can continue to include/exclude individual tests and the playlist will be able to either update its dynamic rules or switch back to keeping track of tests as a static list. Vous pouvez également utiliser des caractéristiques pour définir un groupe dynamique en modifiant directement le fichier xml de la playlist.You can also use traits to define a dynamic group by editing the playlist xml file directly.

Productivité GitGit Productivity

Activez/désactivez la fonctionnalité en préversion « Nouvelle expérience utilisateur Git » dans Outils | Options | Environnement pour utiliser cet expérience.Toggle on the 'New Git user experience' Preview Feature in Tools | Options | Environment to use this experience.

  • Créer un dépôt Git, en commençant par n’importe quel dossier ou un tout nouveau dossierCreate a new Git repository, starting from any folder or a brand new folder
  • Enregistrer et fermer un dossier ou une solution ouvert(e) avant de démarrer une nouvelle opération de clonageSave and close an open folder or solution before starting a new clone operation
  • Afficher clairement les erreurs de message de validation ou stash dans la zone de texte de validationView commit or stash message errors clearly in the commit text box
  • Afficher et gérer les branches Git d’une arborescence dans une nouvelle fenêtre de dépôt GitView and manage Git branches in a tree view within a new Git Repository window
  • Basculer entre les graphes d’historique de chaque branche et interagir avec ceux-ci dans la fenêtre Dépôt GitSwitch between and interact with the history graph of each branch in the Git Repository window
  • Visualiser les commits entrants sortants dans la fenêtre Dépôt GitView incoming and outgoing commits in the Git Repository window
  • Blog de l’équipe de productivité Git avec plus de détails sur les fonctionnalités récentesGit Productivity team blog with more details of recent features
Manage branches and view history in a focused Git Repository window
Gérer les branches et afficher l’historique dans une fenêtre de dépôt Git dédiéeManage branches and view history in a focused Git Repository window

Résoudre les conflits de fusion avec un éditeur de fusion concentré sur Git à l’aide de :Resolve merge conflicts with a Git focused merge editor using:

  • Une barre d’informations dans les fichiers contenant des conflits de fusion qui vous invite à ouvrir l’éditeur de fusionAn info bar in files containing merge conflicts that prompts you to open the merge editor
  • Des titres et des légendes plus informatifs, et moins d’encombrement dans l’éditeur de fusionMore informative titles and captions, and less clutter in the merge editor
  • Différences dans les conflits qui alignent les lignes correspondantes, affichent les différences au niveau des mots et affichent les espaces blancs visibles lorsqu’il s’agit de la seule différence.Diffs within conflicts that align matching lines, show word level differences, and display visible whitespace when it is the only difference.
  • Fusions bidirectionnelles pour les conflits d’ajout/ajout au niveau du fichierTwo-way merges for file level add/add conflicts
  • Possibilité de résoudre tous les conflits en un seul clicThe ability to resolve all conflicts to one side or the other with a single click
  • Bouton bascule pour se concentrer uniquement sur les conflits, en ignorant les différences non conflictuellesA toggle to focus on just conflicts, ignoring non-conflicting differences
New Merge Editor Experience
Résoudre les conflits de fusion avec l’éditeur de fusionResolve Merge Conflicts with the Merge Editor

JavaScript/TypeScriptJavaScript/TypeScript

  • Les implémentations de Completion (Achèvement) et Quick Info (Infos express) ont été mises à jour pour mieux gérer les scénarios LiveShare.The implementations of Completion and Quick Info have been updated to better support LiveShare scenarios.

Processus local avec KubernetesLocal Process with Kubernetes

Local Process with Kubernetes
Processus local avec KubernetesLocal Process with Kubernetes

Processus local avec Kubernetes vous permet d’écrire, de tester et de déboguer votre code .NET sur votre station de travail de développement tout en étant connecté à votre cluster Kubernetes avec le reste de votre application ou de vos services.Local Process with Kubernetes allows you to write, test and debug your .NET code on your development workstation while connected to your Kubernetes cluster with the rest of your application or services. En connectant votre station de travail de développement à votre cluster, vous éliminez le besoin d’exécuter et de configurer manuellement des services dépendants sur votre ordinateur de développement.By connecting your development workstation to your cluster, you eliminate the need to manually run and configure dependent services on your development machine. Les variables d’environnement, les chaînes de connexion et les volumes du cluster sont disponibles pour votre code de microservice exécuté localement.Environment variables, connection strings and volumes from the cluster are available to your microservice code running locally. Il n’est pas nécessaire d’avoir des ressources supplémentaires, comme des manifestes Dockerfile ou Kubernetes.There is no need for extra assets, such as a Dockerfile or Kubernetes manifests. Exécutez, déboguez et testez votre code .NET comme vous le feriez normalement.Run, debug, and test your .NET code as you normally would.

Pour activer le Processus local avec Kubernetes, accédez à Outils > Options > Environnement > Fonctionnalités en préversion et sélectionnez « Activer le débogage local pour les services Kubernetes ».To enable Local Process with Kubernetes, go to Tools > Options > Envrionment > Preview Features and select "Enable local debugging for Kubernetes services".

Enable Preview Features
Activer les fonctionnalités en préversionEnable Preview Features

Pour les applications console .NET, une étape supplémentaire est requise.For .NET console applications, an additional step is required. Installez le package NuGet « Microsoft.VisualStudio.Azure.Kubernetes.Tools.Targets ».Install the "Microsoft.VisualStudio.Azure.Kubernetes.Tools.Targets" Nuget Package.

Productivité .NET.NET Productivity

Il existe désormais un avertissement et une correction de code quand un opérateur de suppression est présent, mais n’a aucun effet.There is now a warning and code fix when a suppression operator is present but has no effect. Une deuxième correction de code suggérant l’expression d’inversion correcte est également disponible.A second code fix suggesting the correct negating expression is also available. Placez le curseur sur l’opérateur de suppression.Place your cursor on the suppression operator. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl + .) to trigger the Quick Actions and Refactorings menu. Sélectionnez ensuite l’une des options suivantes :Next, select from one of the following:

  • Pour supprimer complètement l’opérateur, sélectionnez Supprimer l’opérateur (préserve la sémantique)  :To remove the operator completely, select Remove operator (preserves semantics):
Code fix to remove suppression operator
Correction de code pour supprimer l’opérateur de suppressionCode fix to remove suppression operator
  • Pour inverser l’expression, sélectionnez Inverser l’expression (change la sémantique)  :To negate the expression, select Negate expression (change semantics):
Code fix to negate expression
Correction de code pour inverser l’expressionCode fix to negate expression
  • Vous pouvez également inverser l’expression avec le nouveau modèle not C# 9, s’il est disponible dans votre projet :You can also negate the expression with the new C# 9 not pattern if it is available in your project:
Code fix to negate expression using not
Correction de code pour inverser l’expression avec notCode fix to negate expression using not

Vous pouvez maintenant générer des propriétés lors de la génération d’un constructeur dans un type.You can now generate properties when generating a constructor in a type. Placez le curseur sur l’instance.Place your cursor on the instance. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl + .) to trigger the Quick Actions and Refactorings menu. Sélectionnez Générer le constructeur dans <QualifiedName> (avec les propriétés) .Select Generate constructor in <QualifiedName> (with properties).

Generate properties when generating constructor
Générer des propriétés lors de la génération du constructeurGenerate properties when generating constructor
  • Infos express affiche maintenant l’ID de diagnostic avec un lien d’aide via lequel vous pouvez accéder facilement à notre documentation pour en savoir plus sur les avertissements et les erreurs dans votre code.Quick Info now displays the diagnostic ID along with a help link where you can easily navigate to our documentation to learn more about warnings and errors in your code.
Quick Info Diagnostic ID and Help Link
Infos express - ID de diagnostic et lien d’aideQuick Info Diagnostic ID and Help Link
  • Il existe maintenant une action rapide pour ajouter un attribut d’affichage de débogueur à une classe.There is now a quick action to add a debugger display attribute to a class. Cela vous permet d’épingler programmatiquement dans le débogueur des propriétés dans votre code.This allows you to pin properties within the debugger programmatically in your code. Placez votre curseur sur le nom de la classe.Place your cursor on the class name. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Sélectionnez Ajouter un attribut « DebuggerDisplay » .Select Add ‘DebuggerDisplay` attribute. Cette opération ajoute l’attribut d’affichage du débogueur au début de votre classe et génère une méthode automatique qui retourne ToString() que vous pouvez modifier pour retourner la valeur de propriété que vous souhaitez épingler dans le débogueur.This will add the debugger display attribute to the top of your class and generate an auto method that returns ToString() which you can edit to return the property value you want pinned in the debugger.
Add Debugger Display Attribute
Ajouter un attribut d’affichage du débogueurAdd Debugger Display Attribute
  • Il existe désormais un correctif de code pour les affectations ou les comparaisons accidentelles à la même variable.There is now a code fix for accidental assignments or comparisons to the same variable. Placez votre curseur sur l’avertissement.Place your cursor on the warning. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Pour les affectations accidentelles, sélectionnez Attribuer à .value.For accidental assignments, select Assign to .value. Pour les comparaisons accidentelles, sélectionnez Comparer à .value.For accidental comparisons, select Compare to .value.
Accidental Assignments Code Fix
Correction du code pour les affectations accidentellesAccidental Assignments Code Fix
Accidental Comparisons Code Fix
Correction du code pour les comparaisons accidentellesAccidental Comparisons Code Fix
  • Vous pouvez maintenant générer des opérateurs de comparaison pour les types qui implémentent IComparable.You can now generate comparison operators for types that implement IComparable. Placez votre curseur à l’intérieur de la classe ou sur IComparable.Place your cursor either inside the class or on IComparable. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Sélectionnez Générer des opérateurs de comparaison.Select Generate comparison operators. Une solution toute faite est générée pour vous avec les opérateurs de comparaison.A boiler plate will be generated for you with the comparison operators.
Generate Comparison Operators
Générer des opérateurs de comparaisonGenerate Comparison Operators
  • Vous pouvez maintenant générer des opérateurs IEquatable lors de la génération .Equals pour les structs.You can now generate IEquatable operators when generating .Equals for structs. Nous avons déjà effectué une refactorisation de Générer Equals et GetHashCode pour les types valeur.We already had a refactoring to Generate Equals and GetHashCode for value types. Désormais, avec les structs, nous ajoutons automatiquement IEquatable, ainsi que les opérateurs « equals » et « not equals » pour vous.Now with structs we will automatically add the IEquatable as well as the equals and not equals operators for you. Placez votre curseur dans le struct.Place your cursor within the struct. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Sélectionnez Générer Equals(object) .Select Generate Equals(object).
Generate IEquatable Operators
Générer des opérateurs IEquatableGenerate IEquatable Operators
  • Vous pouvez maintenant créer et assigner des propriétés ou des champs pour tous les paramètres de constructeur inutilisés.You can now create and assign properties or fields for all unused constructor parameters. Nous avions déjà une action rapide qui vous permettait de faire cela sur un paramètre individuel, mais vous pouvez maintenant effectuer cette opération pour tous les paramètres inutilisés à la fois.We already had a quick action that allowed you to do this on an individual parameter, but now you can do it for all unused parameters at once. Placez le curseur sur l’un des paramètres restants.Place your cursor on any of the remaining parameters. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Pour créer et initialiser des propriétés, sélectionnez Créer et affecter ce qui reste en tant que propriétés.To create and initialize properties, select Create and assign remaining as properties. Pour créer et initialiser des champs, sélectionnez Créer et affecter ce qui reste en tant que champs.To create and initialize fields, select Create and assign remaining as fields.
Create and Assign Remaining Fields
Créer et affecter ce qui reste en tant que champsCreate and Assign Remaining Fields
Create and Assign Remaining Properties
Créer et affecter ce qui reste en tant que propriétésCreate and Assign Remaining Properties
  • L’achèvement IntelliSense est désormais disponible dans les littéraux de chaîne DateTime et TimeSpan.There is now IntelliSense completion in DateTime and TimeSpan string literals. Placez votre curseur à l’intérieur du littéral de chaîne DateTime ou TimeSpan, puis appuyez sur (Ctrl+Espace).Place your cursor inside the DateTime or TimeSpan string literal and press (Ctrl+Space). Les options d’achèvement s’affichent, ainsi qu’une explication de ce que signifie chaque caractère.You will then see completion options and an explanation as to what each character means. Le format date/heure et un exemple sont fournis.Both the date time format and an example will be provided.
IntelliSense Completion in DateTime and TimeSpan
Achèvement IntelliSense dans les littéraux de chaîne DateTime et TimeSpanIntelliSense Completion in DateTime and TimeSpan string literals
  • Vous pouvez maintenant ajouter un paramètre dans la boîte de dialogue Modifier la signature.You can now add a parameter within the Change Signature dialog. Placez votre curseur dans la signature de la méthode.Place your cursor within the method’s signature. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Sélectionnez Modifier la signature.Select Change signature. La boîte de dialogue suivante s’ouvre, dans laquelle vous pouvez maintenant sélectionner Ajouter pour ajouter un paramètre.The following dialog will open where you can now select Add to add a parameter. Une fois que vous avez sélectionné Ajouter, la nouvelle boîte de dialogue Ajouter un paramètre s’ouvre.Once you select Add, the new Add Parameter dialog will open. La boîte de dialogue Ajouter un paramètre vous permet d’ajouter un nom de type et un nom de paramètre.The Add Parameter dialog allows you to add a type name and a parameter name. Vous pouvez choisir de rendre le paramètre obligatoire ou facultatif avec une valeur par défaut.You can choose to make the parameter required or optional with a default value. Vous pouvez ensuite ajouter une valeur au site d’appel et choisir un argument nommé pour cette valeur, ou vous pouvez introduire une variable TODO.You can then add a value at the call site and choose a named argument for that value or you can introduce a TODO variable. La variable TODO place un TODO dans votre code afin que vous puissiez consulter chaque erreur et parcourir indépendamment chaque site d’appel, puis décider de ce qui doit être transmis.The TODO variable puts a TODO in your code so you can visit each error and go through each call site independently and decide what to pass. Pour les paramètres facultatifs, vous avez la possibilité d’omettre complètement le site d’appel.For optional parameters you have the option to omit the call site completely.
Change Signature Dialog
Boîte de dialogue Modifier la signatureChange Signature Dialog
Add Parameter Dialog
Boîte de dialogue Ajouter un paramètreAdd Parameter Dialog
  • Les auteurs de l’analyseur peuvent désormais utiliser CompletionProviders pour les achèvements IntelliSense lors de l’envoi de leurs analyseurs avec NuGet.Analyzer authors can now use CompletionProviders for IntelliSense completions when shipping their analyzers with NuGet. Auparavant, les auteurs de bibliothèques devaient créer un VSIX distinct, car CompletionProviders était uniquement disponible dans VSIX.Before, library authors would have to create a separate VSIX since CompletionProviders was only available in VSIX. Désormais, les auteurs de bibliothèques peuvent implémenter des achèvements IntelliSense dans le package NuGet où se trouvent les analyseurs, et ils n’ont pas besoin de le faire séparément.Now library authors can implement IntelliSense completions in the NuGet package where their analyzers are, and they don’t need to do it separately. Les fournisseurs d’achèvement implémentés dans les packages NuGet fournissent également des suggestions spécifiques aux projets individuels et fonctionnent automatiquement dans chaque IDE qui prend en charge la fonctionnalité.Completion providers implemented in NuGet packages will also provide suggestions specific to individual projects and will automatically work in each IDE supporting the feature.

RazorRazor

Essayez le nouvel éditeur Razor reposant sur le nouveau protocole expérimental LSP (Language Server Protocol) avec tous les fichiers Razor (.cshtml/.razor) en sélectionnant la fonctionnalité en préversion Activer l’éditeur Razor expérimental.Try out the new experimental Language Server Protocol (LSP) powered Razor editor with all Razor files (.cshtml/.razor) by selecting the Enable experimental Razor editor preview feature.

Explorateur de testsTest Explorer

Les commandes Exécuter/Déboguer tous les tests de la vue ont été ajoutées à l’Explorateur de tests.Run/Debug All Tests In View have been added to the Test Explorer. Ces commandes remplacent les commandes Exécuter tous les tests et Déboguer tous les tests qui apparaissaient dans l’Explorateur de tests.These commands replace where the Run All Tests and Debug All Tests commands appeared in the Test Explorer. Cette modification clarifie la façon dont ces commandes respectent les filtres de l’Explorateur de tests afin que seuls les tests visibles dans la fenêtre soient exécutés.This change clarifies that these commands honor the filters of the Test Explorer so that only tests visible in window are run. Cela comprend les filtres de colonne et les filtres de zone de recherche.This includes both column filters and search box filters.

Test Explorer Run/Debug All Tests in View commands
Commandes Exécuter/Déboguer tous les tests dans la vue pour l’Explorateur de testsTest Explorer Run/Debug All Tests in View commands

Les commandes Exécuter/Déboguer tous les tests s’affichent désormais uniquement dans le menu de test de niveau supérieur.The Global Run/Debug All commands will now only appear in the top-level Test menu. Elles ne sont plus incluses dans la barre d’outils de l’Explorateur de tests ou dans le menu contextuel des vues de fenêtre de test.They are no longer included in the Test Explorer toolbar or context menu of any test window view. Lorsqu’elle est déclenchée à partir de l’Explorateur de tests, la commande Analyser la couverture du code pour tous les tests s’applique désormais également aux vues de la fenêtre de test.When triggered from the Test Explorer, the Analyze Code Coverage for All Tests now applies to the test window views as well.

Touches de raccourci :Short-cut Keys:

  • Ctrl R, A - Exécuter tous les tests - La commande globale exécute toujours tous les testsCtrl R, A - Run All Test - Global command always runs all tests
  • Ctrl R, V - Exécuter tous les tests dans la vue - Commande uniquement valide lorsqu’une fenêtre de test (Explorateur de tests, liste de lecture, fenêtre Live Unit Testing) est activeCtrl R, V - Run All Tests In View - Only a valid command when a test window (Test Explorer, Playlist, Live Unit Testing Window) are active windows
  • Ctrl R, Ctrl A - Déboguer tous les tests - La commande globale débogue toujours tous les testsCtrl R, Ctrl A - Debug All Test - Global command always debugs all tests
  • Ctrl R, Ctrl V - Déboguer tous les tests dans la vue - Commande uniquement valide lorsqu’une fenêtre de test (Explorateur de tests, liste de lecture, fenêtre Live Unit Testing) est activeCtrl R, Ctrl V - Debug All Tests In View - Only a valid command when a test window (Test Explorer, Playlist, Live Unit Testing Window) are active windows

DébogueurDebugger

Visualisation d’objets COM managés via des pointeurs natifsViewing Managed COM Objects Through Native Pointers

Cette fonctionnalité décode automatiquement les objets COM managés référencés par des pointeurs natifs, ce qui vous permet d’inspecter entièrement les valeurs dans la fenêtre Variables locales.This feature automatically decodes managed COM objects referenced by native pointers allowing you to fully inspect values in the Locals window. Vous trouverez plus de détails sur cette fonctionnalité ici, sur le blog Visual Studio.You can find more details here at the Visual Studio blog.

ProfilerProfiler

Nouvel outil Compteurs de performances .NETNew .NET Performance Counters Tool

.NET Performance Counters Tool
Outil Compteurs de performances .NET.NET Performance Counters Tool

Visualisez des compteurs .NET directement dans le profileur Visual Studio en utilisant l’outil Compteurs de performances .NET.Visualize dotnet counters right from within the Visual Studio Profiler using the .NET Performance Counters Tool. Pour tester l’outil, accédez à Déboguer -> Profileur de performances -> Cochez Outil Compteurs de performances .NET.To try out the tool go to Debug -> Performance Profiler -> Checkmark .NET Performance Counters Tool.

XamarinXamarin

  • Des correcteurs de code ont été introduits pour les types de problèmes les plus courants rencontrés par les utilisateurs avec des fichiers de disposition Android.Code fixers have been introduced for the most common types of problems experienced by users with Android layout files.
  • L’expérience de sélection de modèles Xamarin.Forms a maintenant un nouvel aspect plus expressif, et les modèles de menu volant et à onglets utilisent désormais Shell.The Xamarin.Forms template selection experience now has a fresh and more illustrative look, and the Flyout and Tabbed templates now utilize Shell. Découvrez plus en détail Shell ici.Read more about Shell here. Si, pour une raison quelconque, vous ne souhaitez pas utiliser Shell, employez le modèle vide.If for some reason you don't wish to use Shell, use the Blank template.
New Xamarin.Forms template selection experience
Choix d’un modèle Xamarin.FormsChoosing a Xamarin.Forms template

Outils XAML (WPF, UWP et Xamarin.Forms)XAML Tools (WPF, UWP & Xamarin.Forms)

Rechargement à chaud XAML :XAML Hot Reload:

  • Améliorations apportées à la barre d’outils dans l’application : Nous avons encore affiné l’expérience de barre d’outils dans l’application qui fait partie du workflow d’outils de rechargement à chaud XAML pour WPF et UWP.In-app Toolbar Improvements: We have further refined the in-app toolbar experience that is part of the XAML Hot Reload tooling workflow for WPF & UWP. Les modifications incluent une barre d’outils plus courte qui ne couvre plus l’application en cours d’exécution, et un changement du mécanisme de réduction qui, quand vous cliquez dessus, réduit d’abord le texte de rechargement à chaud XAML, puis réduit entièrement la barre lors du deuxième clic.Changes include a shorter toolbar so that it no longer covers the running application, and a change in the collapse mechanism which when clicked will now collapse the XAML Hot Reload text first, then collapse the bar fully on the second click.

Concepteur XAML :XAML Designer:

  • Prise en charge étendue des données au moment du design pour WPF et UWP : Dans cette version, nous introduisons une nouvelle fonctionnalité de données au moment du design pour les développeurs WPF .NET Core et UWP.Expanded Design-time Data Support for WPF & UWP: In this release we are introducing a new design-time data feature for WPF .NET Core and UWP developers. Cette nouvelle fonctionnalité étend la liste actuelle des propriétés au moment du design accessibles à l’aide du préfixe d:.This new capability will extend the current list of accessible design-time properties through the use of the d: prefix. Cette fonctionnalité sera familière aux développeurs Xamarin.Forms, car elle permet la même approche de l’utilisation d’un préfixe « d: » pour indiquer une propriété qui doit être rendue seulement au moment du design et qui n’est jamais compilée dans l’application en cours d’exécution, ce qui rend son utilisation très sûre pour la validation de l’interface utilisateur au moment de la conception.This feature will be familiar to Xamarin.Forms developers, as it makes available the same approach of using a “d:” prefix to indicate a property that should only be rendered at design-time and never gets compiled into the running app making it very safe to use for design time UI validation. Dans cette version, nous prenons en charge tous les contrôles prêts à l’emploi pour WPF et UWP, et nous prévoyons de prendre en charge des contrôles tiers et personnalisés dans les futures versions.In this release we support all the out-of-the-box controls for WPF and UWP and plan to support 3rd party and custom controls in future releases.
  • Bouton Actualiser du concepteur XAML : Nous avons ajouté un bouton d’actualisation au concepteur XAML ; cette nouvelle icône se trouve dans la zone d’icône en bas à gauche près de l’indicateur de niveau de zoom.XAML Designer Refresh Button: We have added a refresh button to the XAML designer, this new icon can be found in the bottom-left icon area near the zoom level indicator. Cette action d’actualisation produit la réinitialisation équivalente de la fermeture du mode concepteur et de sa réouverture pour les rares cas où cela est nécessaire afin de résoudre un problème de rendu.This refresh action does the equivalent reset of closing the designer view and re-opening it for the rare situations where this is required to resolve a rendering issue. Cette fonctionnalité est disponible pour les développeurs WPF .NET Core et UWP.This feature is available for WPF .NET Core and UWP developers.

Éditeur de code XAML :XAML Code Editor:

  • Visualiseur de couleur : Nous avons encore affiné notre nouveau visualiseur de couleur dans l’éditeur de code XAML pour les projets WPF .NET Core, WPF .NET Framework et Xamarin.Forms.Color Visualizer: We have further refined our new color visualizer in the XAML code editor for WPF .NET Core, WPF .NET Framework and Xamarin.Froms projects. Dans cette version, nous avons ajouté la prise en charge de la visualisation des couleurs provenant des ressources, qui n’existait pas dans la dernière préversion.In this release we have added support for visualizing colors coming from resources, which was previously not supported in the last preview.
Inline Color Previews in XAML Code Editor
Aperçus des couleurs inline dans l’éditeur de code XAMLInline Color Previews in XAML Code Editor

Afficher les éléments de boîte à outils à partir d’un package NuGet sans avoir de référence de packageShow Toolbox items from a NuGet package without having a package reference

Afin de faciliter la découverte, de nombreux auteurs de bibliothèque de contrôles veulent que leurs contrôles apparaissent dans la boîte à outils même si le projet actuel n’a pas encore référencé la bibliothèque.Many control library authors want their controls to be seen in the Toolbox even when the current project hasn't referenced the library yet, as this helps with discoverability. Historiquement, les kits SDK .NET Framework WPF ont toujours effectué cela à l’aide des entrées de registre, mais cela n’est pas pris en charge par .NET Core.WPF .NET Framework SDKs have historically accomplished this using registry entries, but this is not supported by .NET Core. Pour .NET Core WPF, la boîte à outils peut désormais être remplie avec des contrôles à partir de fichiers VisualStudioToolsManifest.xml trouvés dans les packages NuGet .NET Core WPF dans les dossiers de secours NuGet.For WPF .NET Core, Toolbox can now be populated with controls from VisualStudioToolsManifest.xml files found within WPF .NET Core NuGet packages in NuGet fallback folders. Pour plus d’informations, consultez la documentation du dépôt GitHub d’extensibilité du concepteur XAML.For more details, see the documentation in the XAML Designer Extensibility GitHub repo.

Windows FormsWindows Forms

Concepteur Windows Forms pour .NET CoreWindows Forms Designer for .NET Core

Le concepteur Windows Forms pour les projets .NET Core est désormais disponible.The Windows Forms designer for .NET Core projects is now available. Pour activer le concepteur dans Visual Studio, allez dans Outils > Options > Environnement > Fonctionnalités de préversion, et sélectionnez l'option Use the preview Windows Forms designer for .NET Core apps (Utiliser l'aperçu du concepteur de formulaires Windows pour les applications .NET Core).To enable the designer in Visual Studio, go to Tools > Options > Environment > Preview Features and select the Use the preview Windows Forms designer for .NET Core apps option.

Dans cette version, les contrôles suivants sont désormais pris en charge, et d’autres améliorations ont été apportées :In this release the following controls are now supported along with other improvements:

  • Infrastructure des contrôles personnalisés et UserControlUserControl and custom controls infrastructure
  • TableLayoutPanelTableLayoutPanel
  • Notions de base pour la prise en charge des contrôles tiersFundamentals for third-party controls support
  • Notions de base de la prise en charge de la liaison de donnéesFundamentals for data binding support
  • Améliorations de l’interaction du concepteur avec TableLayoutPanelImprovements in designer interaction with the TableLayoutPanel

Corrections de boguesBug Fixes

Principaux problèmes résolus dans Visual Studio 2019 version 16.7.0Top Issues Fixed in Visual Studio 2019 version 16.7.0

  • Résolution de l’échec de l’installation du composant du fournisseur WMI.Fixed WMI Provider component installation failure.
  • Résolution d’un problème où les utilisateurs ne pouvaient pas voir la progression d’une série de tests en cliquant sur le bouton gauche situé dans le bas de la barre.Fixed an issue where users were not able to see test run progress by clicking the left button at the bottom of the bar.
  • Amélioration des performances de la découverte des plans de facturation Visual Studio Codespace disponibles.Improved performance of discovering available Visual Studio Codespace billing plans.
  • Lors de la création d’un Visual Studio Codespace, nous avons changé l’heure de mise en pause par défaut de 30 minutes en 3 heures.When creating a Visual Studio Codespace, we changed the default suspend time from 30minutes to 3 hours.
  • Correction du bogue où la fenêtre des modifications Git informe l’utilisateur qu’il a des validations entrantes/sortantes, alors qu’il n’en a en fait aucune.Fix bug where the Git Changes window informs the user they have incoming/outgoing commits, when in fact they have none.
  • Stabilité améliorée pour les outils de diagnostic et le profileur de performances.Improved stability of the Diagnostic Tools and Performance Profiler.
  • Résolution d’un problème où l’extension Visual Studio d’Azure Sphere n’était pas mise à jour automatiquement en raison d’une non-correspondance de version mineure.Addressed an issue where Azure Sphere Visual Studio extension will not be automatically updated due to a minor version mismatch. Avec le correctif, Azure Sphere peut être mis à jour automatiquement lors de l’exécution de l’utilitaire de mise à jour automatique VSIX.With the fix, Azure Sphere will be able to get automatically updated when the VSIX auto updater runs.

À partir de Developer CommunityFrom Developer Community


Problèmes connusKnown Issues

Consultez tous les problèmes ouverts et les solutions de contournement disponibles dans Visual Studio 2019 en suivant le lien ci-après.See all open issues and available workarounds in Visual Studio 2019 by following the below link.


Commentaires et suggestionsFeedback and suggestions

Nous aimerions connaître votre opinion !We would love to hear from you! Pour tout problème, signalez-les en utilisant l’option Signaler un problème en haut à droite du programme d’installation ou de l’IDE Visual Studio.For issues, let us know through the Report a Problem option in the upper right-hand corner of either the installer or the Visual Studio IDE itself. La clé publique du signataire doit être fournie à la classeThe Feedback Icon icône se trouve en haut à droite.icon is located in the upper right-hand corner. Vous pouvez faire une suggestion de produit ou suivre vos problèmes sur le site Visual Studio Developer Community, où vous pouvez poser des questions, trouver des réponses et proposer de nouvelles fonctionnalités.You can make a product suggestion or track your issues in the Visual Studio Developer Community, where you can ask questions, find answers, and propose new features. Vous pouvez également obtenir une aide gratuite pour l’installation via notre support Live Chat.You can also get free installation help through our Live Chat support.


BlogsBlogs

Tirez parti des insights et des recommandations disponibles sur le site Developer Tools Blogs pour rester informé de toutes les nouvelles versions Release et des publications contenant des informations approfondies sur un large éventail de fonctionnalités.Take advantage of the insights and recommendations available in the Developer Tools Blogs site to keep you up-to-date on all new releases and include deep dive posts on a broad range of features.


Historique des notes de publication de Visual Studio 2019Visual Studio 2019 Release Notes History

Pour plus d’informations sur les versions précédentes de Visual Studio 2019, consultez la page Historique des notes de publication de Visual Studio 2019.For more information relating to past versions of Visual Studio 2019, see the Visual Studio 2019 Release Notes History page.


Haut de la page

Top of Page