Notes de publication Visual Studio 2019 v16.9 PreviewVisual Studio 2019 v16.9 Preview 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
Important
Cette version n’est pas publiée et n’est pas destinée à être utilisée sur des ordinateurs en production ni à créer du code en production.This release is not "go-live" and not intended for use on production computers or for creating production code. Vous trouverez des instructions sur l’installation et la mise à jour de Visual Studio 2019 dans la documentation Passer à la dernière version de Visual Studio 2019.For instructions on installing and updating Visual Studio 2019, see this documentation on updating Visual Studio 2019 to the most recent release.
Nouveautés de Visual Studio 2019What's New in Visual Studio 2019
Délai de prise en chargeSupport Timeframe
Visual Studio 2019 version 16.9 est la quatrième base de référence de maintenance prise en charge pour Visual Studio 2019.Visual Studio 2019 version 16.9 will be the fourth 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.9 sera supportée 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.9 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.9 est disponible, la version 16.7, 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 2022, un an après la livraison de la version 16.9.Additionally, once version 16.9 is released, version 16.7, which was the most recent servicing baseline, will be supported for an additional 12 months and will go out of support in early 2022, a year after 16.9 ships. Une fois la version 16.9 livrée, les versions 16.8 ne seront plus prises en charge.Once version 16.9 ships, versions 16.8 will no longer be under support.
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.
Versions de Visual Studio 2019 PreviewVisual Studio 2019 Preview Releases
- 20 janvier 2021 — Visual Studio 2019 version 16.9 Preview 3January 20, 2021 — Visual Studio 2019 version 16.9 Preview 3
- 8 décembre 2020 — Visual Studio 2019 version 16.9 Preview 2December 08, 2020 — Visual Studio 2019 version 16.9 Preview 2
- 10 novembre 2020 — Visual Studio 2019 version 16.9 Préversion 1November 10, 2020 — Visual Studio 2019 version 16.9 Preview 1
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:
- Visual Studio 2019 v 16.9 Preview 3 est disponible dès aujourd’hui !Visual Studio 2019 v16.9 Preview 3 is Available Today!
- Visual Studio 2019 v16.9 Preview 2 et nos bons vœux pour la Nouvelle année !Visual Studio 2019 v16.9 Preview 2 and New Year Wishes Coming to You!
- Visual Studio 2019 v16.8 et v16.9 Preview 1 sortent aujourd’hui ! Visual Studio 2019 v16.8 and v16.9 Preview 1 Release Today!
- Visual Studio 2019 présente les fonctionnalité d'évaluation de la version 16.8 Preview 3.1 !Visual Studio 2019 Releases Preview Features in v16.8 Preview 3.1!
- Visual Studio 2019 v16.8 Preview 2 publie de nouvelles fonctionnalités aujourd’hui !Visual Studio 2019 v16.8 Preview 2 Releases New Features Today!
- Publication de Visual Studio 2019 v16.7 et v16.8 Preview 1 aujourd’hui !Visual Studio 2019 v16.7 and v16.8 Preview 1 Release Today!
- Nouvelles mises à jour intéressantes de l’expérience Git dans Visual StudioExciting new updates to the Git experience in Visual Studio
- Visual Studio 2019 v16.6 Preview 2 est disponible dès aujourd’hui !Visual Studio 2019 v16.6 Preview 2 Available Today!
- Publication du jour : Visual Studio 2019 v16.6 et v16.7 Preview 1Releasing Today! Visual Studio 2019 v16.6 & v16.7 Preview 1
- Découvrez les nouveautés de Visual Studio 2019 version 16.6 Preview 3 !See What's New in Visual Studio 2019 version 16.6 Preview 3!
- Visual Studio 2019 version 16.6 Preview 2 vous propose de nouvelles fonctionnalitésVisual Studio 2019 version 16.6 Preview 2 Brings New Features Your Way
- Visual Studio 2019 version 16.5 est commercialisé.Visual Studio 2019 version 16.5 is released!
- « C’est le moment pour la mise en production de Visual Studio 2019 v16.4'Tis the Season for Visual Studio 2019 v16.4 Release
- Visual Studio 2019 v 16.4 Preview 2, Fall Sports et Pumpkin SpiceVisual Studio 2019 v16.4 Preview 2, Fall Sports, and Pumpkin Spice
- Prise en charge de .NET Core et bien plus encore dans Visual Studio 2019 version 16.3 - Procédez dès maintenant à la mise à jour !.NET Core Support and More in Visual Studio 2019 version 16.3 - Update Now!
- Publication de Visual Studio 2019 version 16.3 Préversion 2 et de Visual Studio 2019 pour Mac version 8.3 Préversion 2 !Visual Studio 2019 version 16.3 Preview 2 and Visual Studio 2019 for Mac version 8.3 Preview 2 Released!
- Visual Studio 2019 version 16.2 et 16.3 Preview 1 maintenant disponibleVisual Studio 2019 version 16.2 and 16.3 Preview 1 now available
- Visual Studio 2019 version 16.2 Preview 2Visual Studio 2019 version 16.2 Preview 2
- Visual Studio 2019 version 16.1 et 16.2 Preview 1Visual Studio 2019 version 16.1 and Preview 16.2 Preview
- Visual Studio 2019 : Codez plus rapidement. Travaillez plus intelligemment. Créez l’avenir.Visual Studio 2019: Code faster. Work smarter. Create the future.
Visual Studio 2019 version 16.9 Preview 3Visual Studio 2019 version 16.9 Preview 3 
Publication : 20 janvier 2021released January 20, 2021
Résumé des nouveautés de cette version de Visual Studio 2019 version 16.9 Preview 3Summary of What's New in this Release of Visual Studio 2019 version 16.9 Preview 3
C++C++
- Vous pouvez maintenant cibler la version LLVM du runtime OpenMP avec le nouveau commutateur CL /openmp:llvm.You can now target the LLVM version of the OpenMP runtime with the new CL switch /openmp:llvm. Cela ajoute la prise en charge de la clause lastprivate sur les sections omp #pragma et des variables d’index non signées en parallèle pour les boucles.This adds support for the lastprivate clause on #pragma omp sections and unsigned index variables in parallel for loops. Le commutateur /openmp:llvm est actuellement uniquement disponible pour la cible amd64 et reste à l’état expérimental.The /openmp:llvm switch is currently only available for the amd64 target and is still experimental.
- Les projets CMake Visual Studio prennent désormais en charge la première classe pour le développement Windows distant.Visual Studio CMake projects now have first class support for remote Windows development. Cela comprend la configuration d’un projet CMake pour cibler Windows ARM64, le déploiement du projet sur un ordinateur Windows distant, et le débogage du projet sur un ordinateur Windows distant à partir de Visual Studio.This includes configuring a CMake project to target Windows ARM64, deploying the project to a remote Windows machine, and debugging the project on a remote Windows machine from Visual Studio.
- La version de Ninja fournie avec Visual Studio sur Windows a été mise à jour vers la version 1.10.The version of Ninja shipped with Visual Studio on Windows has been updated to version 1.10. Pour plus d’informations sur le contenu inclus, consultez les notes de publication de Ninja 1.10.Please see the Ninja 1.10 release notes for details on what is included.
- La version de CMake fournie avec Visual Studio a été mise à jour vers la version 3.19.The version of CMake shipped with Visual Studio has been updated to version 3.19. Pour plus d’informations sur le contenu inclus, consultez les notes de publication de CMake 3.19.Please see the CMake 3.19 release notes for details on what is included.
- De nombreux de types de verrous/gardes ont été marqués comme noignore dans la bibliothèque STL : https://github.com/microsoft/STL/pull/1495Marked many lock/guard types in the STL as nodiscard: https://github.com/microsoft/STL/pull/1495
- IntelliSense :IntelliSense:
- Amélioration de la stabilité et de la fonctionnalité de saisie semi-automatique dans les modules importés et les unités d’en-tête dans IntelliSense.Improved the stability and functionality of providing imported modules and header units completion in IntelliSense.
- Ajout de Go-to-definition aux importations de modules, prise en charge de l’indexation pour l’exportation { …Added Go-to-definition on module imports, indexing support for export { … }, et référence de module plus précise pour les modules portant le même nom.}, and more accurate module reference for modules with the same name.
- Amélioration de la compatibilité de langage de C++ IntelliSense grâce à l’ajout de la prise en charge de l’initialisation de copie des objets temporaires dans l’initialisation directe de référence, __builtin_memcpy et __builtin_memmove, correction des incohérences entre les fonctions constexpr et consteval, objets temporaires à durée de vie étendue dans les expressions constantes, et types similaires et liaisons de référence.Improved the language compliance of C++ IntelliSense by adding support for Copy-initialization of temporary in reference direct-initialization, __builtin_memcpy and __builtin_memmove, Fixing inconsistencies between constexpr and consteval functions, Lifetime-extended temporaries in constant expressions, and Similar types and reference binding.
- Ajout de l’achèvement pour make_unique, make_shared, emplace et emplace_back qui garantit l’achèvement en fonction du paramètre de type spécifié.Added completion for make_unique, make_shared, emplace and emplace_back which provides completion based on the type parameter specified.
- Address Sanitizer :Address Sanitizer:
- Prise en charge étendue de RtlAllocateHeap, résolution d’un problème de compatibilité avec les intercepteurs RtlCreateHeap et RtlAllocateHeap lors de la création de pools de mémoire exécutables.Expanded RtlAllocateHeap support, fixed a compatibility issue with RtlCreateHeap and RtlAllocateHeap interceptors when creating executable memory pools.
- Ajout de la prise en charge des fonctions de famille de mémoire GlobalAlloc et LocalAlloc héritées.Added support for the legacy GlobalAlloc and LocalAlloc family of memory functions. Vous pouvez activer ces intercepteurs avec
ASAN_OPTIONS=windows_hook_legacy_allocators=true
.You can enable these interceptors withASAN_OPTIONS=windows_hook_legacy_allocators=true
. - Mise à jour des messages pour l’entrelacement et l’interception de la mémoire shadow afin de rendre les problèmes et les résolutions explicites.Updated error messages for shadow memory interleaving and interception failure to make problems and resolutions explicit.
- L’intégration de l’IDE peut désormais gérer la collection complète des exceptions qu’ASan peut signaler.The IDE integration can now handle the complete collection of exceptions which ASan can report.
- Le compilateur et l’éditeur de liens suggèrent d’émettre des informations de débogage s’ils détectent que vous générez avec ASan mais que vous n’émettez pas d’informations de débogageThe compiler and linker will suggest emitting debug information if they detect you're building with ASan but not emitting debug information
JavaScript/TypeScriptJavascript/TypeScript
- Il existe désormais une prise en charge du débogage WebView2 JavaScript/TypeScript basé sur Edge Chromium pour des applications telles que les projets WPF, WinForms et WinUI 3.There is now support for Edge Chromium based WebView2 JavaScript/TypeScript debugging for applications such as WPF, WinForms and WinUI 3 projects. Cette option peut être activée en sélectionnant le débogueur JavaScript dans la boîte de dialogue des propriétés du projet.This can be enabled by selecting the JavaScript debugger from the Project Properties dialog box. Vous trouverez ici plus d’informations sur la prise en mainDetails on how to get started to can be found here
- Explorateur de tests : Il n’existe aucune prise en charge de l’exécution des tests Karma, Jasmine, Mocha, Jest et Tape dans tous les types de projets, y compris .NET et .NET CoreTest Explorer : There is not support for running Karma, Jasmine, Mocha, Jest and Tape tests in all project types, including .NET and .NET Core
DébogueurDebugger
- Ajout d’un nouvel analyseur automatique qui inspecte les threads pour identifier les blocages.Added a new Auto Analyzer that inspects threads for deadlocks.
- Visual Studio filtre maintenant les frames répétitifs redondants de la pile des appels quand le débogueur s’arrête sur une exception StackOverflow.Visual Studio now filters out redundant repeating frames from the call stack when the debugger stops on a StackOverflow Exception. Il est désormais possible de voir la base de la pile où une récurrence infinie provient, ce qui facilite l’examen de ces types de bogues.It is now possible to see the base of the stack where an infinite recursion originated, which hopefully makes it easier to investigate these kinds of bugs.
Productivité .NET.NET Productivity
- La saisie semi-automatique IntelliSense est désormais disponible pour les symboles de préprocesseur.There is now IntelliSense completion for preprocessor symbols.
- L’Explorateur de solutions affiche maintenant les nouveaux générateurs de code source .NET 5.0.Solution Explorer now displays the new .NET 5.0 Source Generators.
- L’option Atteindre tout n’affiche pas les résultats en double dans netcoreapp3.1 et netcoreapp2.0.Go To All won't display duplicate results across netcoreapp3.1 and netcoreapp2.0.
- Info express affiche désormais les ID d’avertissement du compilateur ou les nombres pour les suppressions.Quick Info now displays compiler warning IDs or numbers for suppressions.
- Vous pouvez maintenant configurer des signaux audio avec l’Explorateur de tests, le menu Grouper par est plus accessible pour les lecteurs d’écran, et l’affichage d’une longue sortie de test est plus facile grâce à des liens cliquables ouvrant directement des fichiers journaux.You can now configure audio cues with the Test Explorer, the Group By menu is more accessible for screen readers, and viewing long test output is easier with clickable links opening log files directly.
- Prise en charge améliorée par .NET d’Azure App Configuration en tant que service connectéEnhanced .NET support for Azure App Configuration as a Connected Service
Outils XAML (WPF, WinUI, UWP & Xamarin. Forms)XAML Tools (WPF, WinUI, UWP & Xamarin.Forms)
- Amélioration de la prise en charge de MVVM : dans cette version, nous avons introduit une nouvelle boîte de dialogue qui vous permet de créer rapidement un modèle de vue et de le déclarer comme DataContext pour la page XAML.Improved MVVM Support: In this release, we introduced a new dialog that allows you to quickly create a view-model and declare it as the DataContext for the XAML page. La définition du DataContext améliorera IntelliSense quand vous travaillerez avec des liaisons de données, telles que la possibilité de créer des propriétés dans le modèle d’affichage, d’accéder à la définition et des saisies semi-automatiques.Setting the DataContext will enhance IntelliSense when working with data bindings – such as the ability to create properties in the view-model, Go To Definition, and completions.

- Un élément ampoule dans l’éditeur XAML vous permet désormais de créer une nouvelle propriété ICommand dans votre modèle d’affichage.A lightbulb item within the XAML editor now allows you to create a new ICommand property in your view-model. Lorsque l’éditeur n’est pas en mesure de résoudre une liaison pour une commande, cette fonctionnalité recherche les implémentations de ICommand dans ou référencées par votre projet.When the editor is unable to resolve a binding for a Command, this feature looks for ICommand implementations within, or referenced by, your project. Elle vous permet ensuite de générer rapidement un champ, une commande et une méthode d’exécution sans quitter l’éditeur XAML.It then allows you to quickly generate a field, command, and execute method without leaving the XAML editor.
Problèmes traités dans cette Mise en productionIssues Addressed in this Release
À partir de Developer CommunityFrom Developer Community
- Visual Studio 2019 génère un code incorrect lors de l’utilisation d’une construction de boucle infinie avec des instructions continue et break explicites.Visual Studio 2019 produces incorrect code when using an infinite loop construct with explicit continue and break statements.
- Les avertissements de validation (CSS 4.0) s’affichent sans option pour passer à la validation CSS 3.0 "Validation (CSS 4.0) warnings appear with no option to change to CSS 3.0 validation
- IntelliSense : scss map signale une séquence de caractères inattendue Intellisense: scss map reports unexpected character sequence
- Le volet Outils de diagnostic est vide/endommagé dans VS 2019 Diagnostic Tools pane is blank/corrupted in VS 2019
- VS pour Linux : L’option d’annulation de la génération (Ctrl+Arrêt) ne fonctionne pas sur les solutions complexes ! Impossible de fermer VS ! VS for Linux: Build cancel (Ctrl+Break) Not work on complex solutions! VS not closable!
- Bogue de l’opération de fusion et de validation git A git merge and not commit operation bug
- L’ajout d’un nouveau rapport (.rdl) échoue avec l’erreur « Member not found 0x80020003 DISP_E_MEMBERNOTFOUND » Adding a new Report (.rdl) fails with error "Member not found 0x80020003 DISP_E_MEMBERNOTFOUND"
- Modules et chaiscript : erreur interne du compilateur Modules and chaiscript: internal compiler error
- Chemin de débogage Linux distant endommagé avec une référence de projet partagée Remote linux debug path broken with shared project reference
- Explorateur de l’exécuteur de tâches endommagé dans 16.8 Task Runner Explorer Broken in 16.8
- c2833 avec opérateur decltype c2833 with operator decltype
- Le projet WinForms VB.Net Core par défaut génère une erreur lors de la création des paramètres. Default VB.Net Core WinForms Project gets error creating Settings.
- Microsoft Azure Tools : Méthode introuvable : 'Void Microsoft.WindowsAzure.ServiceModel.Service.set_IsSLBPartialGS(Microsoft.WindowsAzure.ServiceModel.Expr Microsoft Azure Tools: Method not found: 'Void Microsoft.WindowsAzure.ServiceModel.Service.set_IsSLBPartialGS(Microsoft.WindowsAzure.ServiceModel.Expr
- __is_nothrow_constructible intrinsic ignore les conversions d’arguments qui peuvent être levées __is_nothrow_constructible intrinsic ignores potentially-throwing argument conversions
- Vous ne pouvez pas choisir/autoriser en « mode de conformité » You can not choose /permissive in "Conformance mode"
- Le lien Linux échoue avec la référence de projet Linux link fails with project reference
- Visual Studio oblige l’utilisateur à utiliser son thème Contraste élevé lorsque Windows est en mode Contraste élevéVisual Studio forces the user to use its High Contrast theme when Windows is in High Contrast mode
Détail des nouveautés de Visual Studio 2019 version 16.9 Preview 3Details of What's New in Visual Studio 2019 version 16.9 Preview 3
Productivité .NET.NET Productivity
- La saisie semi-automatique IntelliSense est désormais disponible pour les symboles de préprocesseur.There is now IntelliSense completion for preprocessor symbols. Commencez à saisir la directive
#if
pour afficher les nouvelles options de saisie semi-automatique pour les symboles actuellement définis dans la portée.Start typing the#if
directive to see the new completion options for symbols that are currently defined in scope.

- L’Explorateur de solutions affiche désormais les nouveaux générateurs de code source .NET 5.0 sous le nœud Analyseur pour vous permettre de naviguer et d’afficher facilement le code généré.Solution Explorer now displays the new .NET 5.0 Source Generators underneath the Analyzer node so you can easily navigate and view the generated code.

- La fenêtre Atteindre tout n’affiche pas les résultats dupliqués dans netcoreapp3.1 et netcoreapp2.0, ainsi que les résultats pour les types partiels qui existent uniquement pour encapsuler un autre type imbriqué.The Go To All window will not display duplicate results across netcoreapp3.1 and netcoreapp2.0 as well as results for partial types that exist only to wrap another nested type. Cela vous aidera à démêler les résultats afin de rechercher facilement le code pour y accéder.This will help declutter the results so you can easily find and navigate to code. Les résultats incluent maintenant également le nom de fichier pour les symboles partiels.The results also now include the filename for partial symbols.

- Info express affiche désormais les ID d’avertissement du compilateur ou les nombres pour les suppressions.Quick Info now displays compiler warning IDs or numbers for suppressions. Placez le curseur sur les ID ou les numéros d’avertissement pour afficher des informations express sur l’ID de diagnostic.Hover your cursor over the warning IDs or numbers to view Quick Info for the diagnostic ID.

RemerciementsThank You
Pour terminer, nous souhaitons adresser un grand merci aux personnes suivantes qui ont participé ce mois-ci à Productivité .NET (que vous connaissez aussi sous le nom deLast but certainly not least, a big Thank You to the following people who contributed this month to .NET Productivity (a.k.a. Roslyn) :Roslyn):
- Youssef Victor (@Youssef1313) :Youssef Victor (@Youssef1313):
- Définition de
$Main
commeWellKnownMemberNames
PR #49650Defined$Main
asWellKnownMemberNames
PR #49650 - Implémentation du traitement des paramètres positionnels d’enregistrement en tant que propriétés PR #48329Implemented treat record positional parameters as properties PR #48329
- Correction de la ligne en pointillés pour la condition multiligne dans
else if
PR #48534Fixed the dotted line for multiline condition inelse if
PR #48534
- Définition de
- Martin Strecker (@MaStr11) :Martin Strecker (@MaStr11):
- Joseph Musser (@jnm2) :Joseph Musser (@jnm2):
- Conserver les parenthèses requises par C# lors de la simplification de l’interpolation PR #49655Preserve parentheses required by C# when simplifying interpolation PR #49655
- Implémentation pour arrêter l’offre d’ajout de DebuggerDisplay sur les types statiques PR #49824Implementation to stop offering to add DebuggerDisplay on static types PR #49824
- Huo Yaoyuan (@huoyaoyuan) :Huo Yaoyuan (@huoyaoyuan):
- Jon Senchyna (@TheSench) : Fonctionnalité permettant de lever l’ambiguïté du mot clé
using
PR #48898Jon Senchyna (@TheSench): Feature to disambiguateusing
keyword PR #48898 - Mathias Lykkegaard Lorenzen (@ffMathy) : Augmenter le nombre maximal de suggestions à 5 PR #49687Mathias Lykkegaard Lorenzen (@ffMathy): Increase maximum suggestions to 5 PR #49687
- Alireza Habibi (@alrz) : Générer un cast explicite pour les conversions implicites dans le correctif de code
use pattern matching
PR #49757Alireza Habibi (@alrz): Generate explicit cast for implicit conversions in theuse pattern matching
codefix PR #49757 - Raf (Raffaele Rialdi) (@raffaeler) : Ajout de la prise en charge pour normaliser les propriétés automatiques sur une seule ligne PR #49495Raf (Raffaele Rialdi) (@raffaeler): Added support to normalize auto properties on a single line PR #49495
Outils webWeb Tools
L’ajout d’App Configuration en tant que service connecté connecte automatiquement votre application à votre ressource Azure App Configuration.Adding App Configuration as a connected service automatically connects your application to your Azure App Configuration Resource. Il existe désormais une prise en charge de la génération automatique de code pour les projets de console .NET Core, ainsi que l’ajout automatique de packages NuGet pour les projets .NET Framework.There is now support for generating code automatically for .NET Core Console projects, as well as adding NuGet packages automatically for .NET Framework projects. Pour intégrer ce service connecté à votre application, cliquez sur Services connectés, puis ajoutez Azure App Configuration en tant que dépendance de service.To integrate this Connected Service into your app, click on Connected Services and add Azure App Configuration as a Service Dependency.

Signaux audio et mises à jour de l’accessibilité pour l’Explorateur de testsTest Explorer audio cues and accessibility updates
- L’Explorateur de tests peut désormais émettre un signal sonore lorsqu’une série de tests est terminée.The Test Explorer can now play a sound when a test run completes. Vous pouvez sélectionner deux sons, un pour indiquer que la série s’est terminée et que tous les tests ont réussi, et un second pour indiquer que la série s’est terminée et qu’au moins un test a échoué.You can select two sounds, one for indicating the test run succeeded with all passing tests and a second sound to indicate the test run completed with at least one failing test. Cette fonctionnalité a démarré en tant que requête d’utilisateur et améliore l’accessibilité de l’Explorateur de tests en ajoutant un signal audio qui aide les développeurs souffrant d’une déficience visuelle.This feature started as a user request and improves the accessibility of the Test Explorer by adding an audio cue which is useful for developers who have a visual impairment. La sélection du son utilise la boîte de dialogue audio Windows 10 par défaut, dans laquelle vous pouvez également sélectionner des sons prédéfinis ou n’importe quel fichier audio de votre ordinateur.The sound selection uses the default Windows 10 sound dialog where you can also select from the preset sounds or any audio file from your computer!
- Le menu Grouper par de l’Explorateur de tests est désormais plus accessible à l’aide d’expressions plus concises et de termes mieux ordonnés lorsqu’ils sont lus par un lecteur d’écran.The Group By in the Test Explorer is now more accessible using more concise phrases and word order when read by a screen reader.
- L’affichage d’une longue sortie de test à partir du volet des détails du test dans l’Explorateur de tests est désormais plus facile grâce à un lien permettant d’ouvrir directement le fichier journal au lieu du contrôle de document spécial.Viewing long test output from the test details pane in the Test Explorer is now easier with a link to open the log file directly instead of the special document control.
Visual Studio 2019 version 16.9 Preview 2Visual Studio 2019 version 16.9 Preview 2
Publication : 8 décembre 2020released December 08, 2020
Résumé des nouveautés de cette version de Visual Studio 2019 version 16.9 Preview 2Summary of What's New in this Release of Visual Studio 2019 version 16.9 Preview 2
Productivité GitGit Productivity
- Validation des modifications à l’aide du raccourci clavier Ctrl+EntréeCommit changes with the keyboard shortcut Ctrl+Enter
C++C++
- MSVC détermine maintenant les bons runtimes AddressSanitizer requis pour vos binaires.MSVC now determines the correct address sanitizer runtimes required for your binaries. Votre projet Visual Studio bénéficie automatiquement des nouvelles modifications.Your Visual Studio project will automatically get the new changes. Si vous utilisez AddressSanitizer à partir de la ligne de commande, il vous suffit à présent de passer /fsanitize=address au compilateur.When using address sanitizer on the command line, you now only need to pass /fsanitize=address to the compiler.
- Le gestionnaire de connexions de Visual Studio prend désormais en charge les clés privées à l’aide de l’algorithme à clé publique ECDSA.Visual Studio's Connection Manager now supports private keys using the ECDSA public key algorithm.
- Mise à jour à v11 des versions de LLVM et Clang fournies dans notre programme d’installation.Updated the versions of LLVM and Clang shipped in our installer to v11. Pour plus d’informations, lisez les notes de publication de LLVM et Clang.Read the release notes for LLVM and Clang for more information.
- Visual Studio utilise désormais des variables CMake à partir de fichiers de chaîne d’outils pour configurer IntelliSense.Visual Studio will now use CMake variables from toolchain files to configure IntelliSense. Cela permet d’offrir une meilleure expérience pour le développement intégré et Android.This will provide a better experience for embedded and Android development.
Productivité .NET.NET Productivity
- Les directives using sont désormais automatiquement ajoutées lors de la copie et du collage de types dans un nouveau fichier.Using directives will now automatically get added when copying and pasting types to a new file.
- La complétion IntelliSense insère automatiquement un point-virgule comme caractère de validation pour la création d’objets et la complétion de méthodes.IntelliSense completion will now automatically insert a semicolon as a commit character for object creation and method completion.
- Colorisation sémantique pour les enregistrements dans C# 9.0.Semantic colorization for C# 9.0 records.
- La refactorisation supprime les discards inutiles.Refactoring that removes unnecessary discards.
- La refactorisation convertit une chaîne verbatim et une chaîne normale en chaîne interpolée en conservant les accolades censées figurer dans la sortie.Refactoring that converts a verbatim and regular string to an interpolated string preserving curly braces that were intended to go in the output.
- Correction du code dans Visual Basic qui supprime le mot clé shared quand vous convertissez des méthodes partagées en module.Code fix in Visual Basic that removes the shared keyword when you convert methods that are shared to a module.
- Déployez vos applications Steeltoe sur Azure Spring Cloud à l’aide de la fonctionnalité Publier de Visual Studio (cliquez avec le bouton droit sur Publier dans l’Explorateur de solutions).Deploy your Steeltoe applications to Azure Spring Cloud using Visual Studio Publish (e.g. right-click > Publish in Solution Explorer).
- Gérez les paramètres de configuration et les indicateurs de fonctionnalités de votre application en intégrant Azure App Configuration en tant que service connectéManage your application's configuration settings and feature flags by integrating Azure App Configuration as a Connected Service
Programme d’installation de Visual StudioVisual Studio Installer
- Le programme d’installation de Visual Studio ne nécessite plus d’élévation au lancementThe Visual Studio Installer no longer elevates on launch
- Le programme d’installation de Visual Studio prend désormais en charge les écrans HDRThe Visual Studio Installer now supports HDR displays
- Le programme d’installation de Visual Studio prend en charge le lecteur d’écran du navigateurThe Visual Studio Installer supports the Navigator screen reader
- Les mises à jour du programme d’installation de Visual Studio ont été intégrées aux mises à jour de Visual Studio pour plus de simplicitéInstaller updates have been streamlined into the Visual Studio update
- Le programme d’installation de Visual Studio prend désormais en charge le thème foncéThe Visual Studio Installer adds dark theme support
Problèmes traités dans cette Mise en productionIssues Addressed in this Release
- Correction d’un incident intermittent dans Visual Studio lors de l’utilisation du concepteur WinForms .NET Core.Fix for an intermittent crash in Visual Studio while using WinForms .NET Core designer.
- Correction de l’envoi (push) à partir de la page Gérer les branches lorsqu’il n’existe aucune branche de suivi Git distante.Fix Push from Manage Branches page when there is no Git remote tracking branch.
Détail des nouveautés de Visual Studio 2019 version 16.9 Preview 2Details of What's New in Visual Studio 2019 version 16.9 Preview 2
Productivité GitGit Productivity
- Validation des modifications à l’aide du raccourci clavier Ctrl+Entrée
Commit changes with the keyboard shortcut Ctrl+EnterValidation des modifications avec Ctrl+EntréeCommit changes with Ctrl+Enter
Expérience de testTest Experience
- Prise en charge de la collecte de la couverture du code pour les projets de test .NET Core utilisant Fakes.Added support for collecting code coverage for .NET Core test projects that use Fakes.
- Réduction du temps nécessaire à la fusion de plusieurs rapports de couverture du code.Reduced time needed to merge multiple code coverage reports.
Productivité .NET.NET Productivity
- Les directives using sont désormais automatiquement ajoutées lors de la copie et du collage de types dans un nouveau fichier.Using directives will now automatically get added when copying and pasting types to a new file. Vous devez d’abord activer cette option dans Outils > Options > Éditeur de texte > C# ou De base > Avancé, puis sélectionner Ajouter les directives using manquantes au moment du collage.You will first need to turn this option on in Tools > Options > Text Editor > C# or Basic > Advanced and select Add missing using directives on paste.

- La complétion IntelliSense insère automatiquement un point-virgule comme caractère de validation pour la création d’objets et la complétion de méthodes.There is now IntelliSense completion that automatically inserts a semicolon as a commit character for object creation and method completion.

- La sémantique des enregistrements dans C# 9.0 est désormais colorisée.There is now semantic colorization for C# 9.0 records. Vous pouvez personnaliser les couleurs dans Outils > Options > Environnement > Polices et couleurs.You can customize colors in Tools > Options > Environment > Fonts and Colors. Dans Afficher les éléments, faites défiler jusqu’à Types d’utilisateurs – Enregistrements, puis sélectionnez la couleur à appliquer aux enregistrements.In Display items scroll to User Types – Records and select the color that you would like to apply to records.

- Dans C# 9.0, les discards ne sont pas nécessaires dans certains cas de critères spéciaux.In C# 9.0 discards are unnecessary in certain pattern matching cases. Nous estompons désormais les discards inutiles et proposons un correctif de code pour les supprimer.We now fade unnecessary discards and offer a code fix to remove them. Placez votre curseur sur le discard estompé.Place your cursor on the faded discard. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Sélectionnez Supprimer tout discard inutile.Select Remove unnecessary discard.

- Une refactorisation convertit à présent une chaîne verbatim et une chaîne normale en chaîne interpolée qui conserve les accolades censées figurer dans la sortie.There is now a refactoring that converts a verbatim string and a regular string to an interpolated string that will preserve curly braces that were intended to go in the output. Cette refactorisation n’est pas offerte si la chaîne est affectée à une constante.This refactoring is not offered if the string is assigned to a constant. Placez le curseur sur la chaîne.Place your cursor on the string. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Sélectionnez Convertir en chaîne interpolée.Select Convert to interpolated string.

- Une correction de code dans Visual Basic supprime désormais le mot clé shared quand vous convertissez des méthodes partagées en module.There is now a code fix in Visual Basic that removes the shared keyword when you convert methods that are shared to a module.
RemerciementsThank You
Pour terminer, nous souhaitons adresser un grand merci aux personnes suivantes qui ont participé ce mois-ci à Productivité .NET (que vous connaissez aussi sous le nom deLast but certainly not least, a big Thank You to the following people who contributed this month to .NET Productivity (a.k.a. Roslyn) :Roslyn):
- Youssef Victor (@Youssef1313) :Youssef Victor (@Youssef1313):
- Implémentation d’un correctif de code Visual Basic pour supprimer Shared des membres d’un module PR #48289Implemented Visual Basic code fix to remove Shared from module members PR #48289
- Prise en charge de l’accesseur init dans CSharpSyntaxFacts PR #48137Support init accessor in CSharpSyntaxFacts PR #48137
- Élévation du niveau d’avertissement par défaut au plus récent dans les tests PR #47077Raised the default WarningLevel to latest in tests PR #47077
- Élimination de la suppression inutile PR #48277Remove unnecessary suppression PR #48277
- Refactorisation de l’extraction de la méthode pour fonctionner avec des enregistrements PR #48531Extract Method refactoring to work with records PR #48531
- Correction du niveau d’avertissement pour les diagnostics masqués PR #48397Fix WarningLevel for hidden diagnostics PR #48397
- Correction d’un nouveau bogue typé cible avec le comptage Rechercher toutes les références PR #48434Fix target-typed new bug with Find All References counting PR #48434
- Analyse d’une propriété quand elle contient des parenthèses PR #48598Property parsing when it contains paretheses PR #48598
- Correction d’InvalidCastException quand le filtre d’exceptions contient une expression de commutateur PR #48260Fix InvalidCastException when exception filter contains a switch expression PR #48260
- Louis Zanella (@louis-z) : Implémentation d’une refactorisation qui convertit les chaînes régulières et verbatim en chaîne interpolée qui conserve les accolades PR #48502Louis Zanella (@louis-z): Implemented refactoring that converts regular and verbatim strings to an interpolated string that preserve curly braces PR #48502
- Shimmy (@weitzhandler) : Suggestion d’un constructeur par défaut entre membres PR #48503Shimmy (@weitzhandler): Default Constructor suggestion between members PR #48503
- Kai Jellinghaus (@HurricanKai : GreenNode.CreateList désormais statique et ajustement de toutes les utilisations PR #48536Kai Jellinghaus (@HurricanKai: Make GreenNode.CreateList static and adjusts all usages PR #48536
- Jon Senchyna (@TheSench) :Jon Senchyna (@TheSench):
- Mise à jour des mots clés F1 pour différencier la sémantique du mot clé par défaut PR #48500Update F1 Keywords to differentiate between semantics of default keyword PR #48500
- Mise à jour des mots clés F1 pour lever l’ambiguïté de la classe PR #48506Update F1 keywords to disambiguate class PR #48506
- Ajout du mot clé F1 pour la classe utilisée en tant que contrainte de type générique PR #21037Add F1 keyword for class used as generic type constraint PR #21037
- Petr Onderka (@svick) : Correction de la gestion des ID de commentaires de documentation pour les tuples et dynamic PR #48359Petr Onderka (@svick): Fixed documentation comment ID handling for dynamic and tuples PR #48359
- Huo Yaoyuan (@huoyaoyuan) :Huo Yaoyuan (@huoyaoyuan):
- Correctif empêchant le déclenchement de la violation de style de nommage pour les nombres préfixés PR #48306Fix to not trigger naming style violation for prefixed numbers PR #48306
- Correctif pour que l’analyseur IDE0057 gère correctement la sous-chaîne dans la chaîne PR #48321Fix for IDE0057 analyzer to correctly handle substring in string itself PR #48321
- Rastislav Novotny (@duracellko) : Prise en charge de NotNullIfNotNull dans les opérateurs binaires PR #48490Rastislav Novotny (@duracellko): Support NotNullIfNotNull in binary operators PR #48490
- Alireza Habibi (@alrz) : Correction de l’analyse de modèle de type Nullable pour améliorer la récupération d’erreur PR #48447Alireza Habibi (@alrz): Fix nullable type pattern parsing for better error recovery PR #48447
- Lingling Tong (@LinglingTong) : Activation du diagnostic du modèle de tirage (pull) LSP pour XAML PR #49145Lingling Tong (@LinglingTong): Enable LSP pull model diagnostic for XAML PR #49145
- David Maas (@PathogenDavid) : Correction de SkipLocalsInit au niveau du module avec des instructions de niveau supérieur PR #49435David Maas (@PathogenDavid): Fix module-level SkipLocalsInit with top-level statements PR #49435
- Martin Strecker (@MaStr11) : Prise en charge des numéros d’avertissement dans Info Express pour les suppressions PR #49102Martin Strecker (@MaStr11): Support warning numbers in Quick Info for suppressions PR #49102
- Adam Speight (@AdamSpeight2008) : Amélioration des performances PR #49459Adam Speight (@AdamSpeight2008): Perfomance improvement PR #49459
- Adam Ralph (@adamralph) : Correction d’un extrait de code non valide lors de l’ajout de paramètres facultatifs à des méthodes publiques PR #48725Adam Ralph (@adamralph): Fix invalid code snippet in adding optional parameters to public methods PR #48725
IntelliCodeIntelliCode
- IntelliCode fournit désormais des suggestions de modifications répétées directement dans la liste de complétions IntelliSense.IntelliCode now provides repeated edit suggestions directly within the IntelliSense completions list. Vous pouvez afficher l’aperçu de la suggestion de modification, l’appliquer à l’endroit approprié ou ignorer les suggestions comme celles-ci directement à partir de l’élément de complétion.You can view the Preview of the suggested change, apply at that location or ignore suggestions like these directly from the completion item. En savoir plus sur les suggestions IntelliCode.Learn more about IntelliCode suggestions.
Outils web .NET.NET Web Tools
- Déployez vos applications Steeltoe sur Azure Spring Cloud à l’aide de la fonctionnalité Publier de Visual Studio (cliquez avec le bouton droit sur Publier dans l’Explorateur de solutions).Deploy your Steeltoe applications to Azure Spring Cloud using Visual Studio Publish (e.g. right-click > Publish in Solution Explorer). Si vous ne voyez pas l’option, vérifiez que votre projet comprend le package NuGet Microsoft.Azure.SpringCloud.Client version 1.0.0-preview.1 ou ultérieure.If you are not seeing the option, make sure your project includes the NuGet package Microsoft.Azure.SpringCloud.Client version 1.0.0-preview.1 or later.

Outils webWeb Tools
- L’onglet Services connectés prend désormais en charge Azure App Configuration.The Connected Services tab now supports Azure App Configuration. App Configuration vous permet de gérer de manière centralisée les paramètres et les indicateurs de fonctionnalités d’une application.App Configuration lets you centrally manage application settings and feature flags. Lorsque vous ajoutez cette dépendance de service, votre code est automatiquement mis à jour pour se connecter à votre ressource App Configuration.When you add this service dependency, your code is automatically updated to connect to your App Configuration resource. Cela inclut l’installation des packages NuGet les plus récents ainsi que le stockage de vos secrets localement ou dans Key Vault.This includes installing the most up to date NuGet Packages and storing your secrets locally or in Key Vault.

Programme d’installation de Visual StudioVisual Studio Installer
Plusieurs nouvelles fonctionnalités ont été incorporées au programme d’installation de Visual Studio en réponse aux demandes des clients.The Visual Studio installer has incorporated several new features in response to customer requests.
De nombreux utilisateurs utilisent désormais le programme d’installation pour identifier, lancer et gérer plusieurs copies de Visual Studio.Many users now use the installer to identify, launch, and manage multiple copies of Visual Studio. Pour faciliter ce modèle d’utilisation, le programme d’installation de Visual Studio ne nécessite plus d’élévation au lancement. L’élévation n’est nécessaire que pour apporter des modifications à Visual Studio et à la machine.To aid this use pattern, the Visual Studio installer no longer requires elevation on launch and only requires elevation to make changes to Visual Studio and the machine. D’autres activités, comme l’exportation de configurations d’installation, la navigation dans les actualités et l’affichage des détails des mises à jour, ne nécessitent plus l’élévation préalable de l’utilisateur.Other activities, like exporting install configurations, navigating news, and viewing update details no longer require the user to elevate first.
Les versions antérieures du programme d’installation demandaient parfois aux utilisateurs d’effectuer une étape supplémentaire pour mettre à jour le programme d’installation.Earlier versions of the installer would occasionally ask users to take an additional step to update the installer. Avec cette mise à jour, les mises à jour requises du programme d’installation sont maintenant gérées dans le cadre de l’opération d’installation, ce qui supprime cette étape supplémentaire.With this update, required installer updates are now handled as part of the installation operation, removing the extra step.
Le programme d’installation ajoute désormais une sélection de thème en mode foncé.The installer now adds a dark mode theme selection. Les utilisateurs peuvent changer le thème du programme d’installation par le biais du bouton soleil/lune (☼/☽) dans la barre de titre.Users can changing the theme of the installer via the sun / moon (☼ / ☽) button in the title bar. Les mises à jour lancées à partir de l’IDE Visual Studio utilisent la sélection de thème actuelle de Visual Studio.Updates started from within the Visual Studio IDE will use the current theme selection of Visual Studio.

À partir de Developer CommunityFrom Developer Community
- L’Assistant Publication ClickOnce pour .NET Core 3.1 et .NET 5.0 dans Visual Studio 2019 16.8 ne génère pas un fichier publish.htm de déploiement The ClickOnce Publish Wizard for .NET Core 3.1 and .NET 5.0 in Visual Studio 2019 16.8 does not generate deployment publish.htm
- Génération d’un grand nombre d’erreurs d’analyse du code après la mise à jour vers 16.8 malgré la définition de certaines règles sur Avertissement After 16.8 update getting lot of code analysis errors despite certain rules set to warning
- Génération de code incorrect / erreur manquante Incorrect Code Gen / Missing Error
- Erreur de compilateur interne VS 16.7.0 Internal compiler error VS 16.7.0
- Régression d’auto constexpr dans 16.7 avec tableau déduit : #include
using std::array; void f() { using A1 = array; auto const v1 = array{ 16.7 regression auto constexpr with deduced array #include using std::array; void f() { using A1 = array; auto const v1 = array{ - Impossible de compiler un module avec partition Module with partition won't compile
- Contrôle de code source « Impossible de démarrer une opération de changement des fichiers derrière la solution quand une opération Build ou Debug est en cours » dans 16.7.4 Source Control "Cannot start an operation to change files behind the solution when Build or Debug is in progress" in 16.7.4
- Régression : erreur de compilateur interne C++ dans 16.7.0 avec /std:c++17 (fichier de compilateur ’msc1.cpp’, ligne 1591) Regression: c++ internal compiler error in 16.7.0 with /std:c++17 (compiler file 'msc1.cpp', line 1591)
- VS2019 efface toujours le répertoire CMakeBuild chaque fois que je touche CMakeFiles.txt ou CMakeSettings.json VS2019 still wipes CMakeBuild directory each time I touch CMakeFiles.txt or CMakeSettings.json
- Visual Studio 16.8.0 disparaît au début de la création d’une méthode Visual Studio 16.8.0 disappears when starting to create a method
- Le fichier n’est pas enregistré après avoir été modifié File isn't saved after change
- La compilation de l’initialisation de liste d’un tableau avec static_cast échoue dans une fonction constexpr avec VS2019 16.8.0 Preview 1 List initialization of an array with static_cast fails to compile in a constexpr function with VS2019 16.8.0 prevew 1
- Bogue lors de la compilation de std avec clan clang-cl dans la denière version de VS Bug in compiling std with clan clang-cl in latest VS
- [MSConnect 3093410] std::get_time échoue lors de l’utilisation de formats sans séparateurs [MSConnect 3093410] std::get_time fails when using formats without separators
- IntelliSense cesse de fonctionner lors de l’utilisation de Coroutines-TS avec ASIO. IntelliSense stops working when using Coroutines-TS with ASIO.
- IntelliSense cesse de fonctionner lors de l’utilisation de Coroutines-TS avec ASIO. IntelliSense stops working when using Coroutines-TS with ASIO.
- Visual Studio oblige l’utilisateur à utiliser son thème Contraste élevé lorsque Windows est en mode Contraste élevé.Visual Studio forces the user to use its High Contrast theme when Windows is in High Contrast mode.
Visual Studio 2019 version 16.9 Préversion 1Visual Studio 2019 version 16.9 Preview 1
Publication : 10 novembre 2020released November 10, 2020
Résumé des nouveautés de cette mise en production de Visual Studio 2019 version 16.9 Préversion 1Summary of What's New in this Release of Visual Studio 2019 version 16.9 Preview 1
Productivité GitGit Productivity
- Envoyer (push) toutes les balises à partir de la fenêtre Modifications GitPush all tags from the Git Changes window
Productivité .NET.NET Productivity
- Une refactorisation qui suggère l’utilisation de
new(…)
dans des scénarios sans litigesA refactoring that suggests usingnew(…)
in non-contentious scenarios - Un correctif de code qui supprime les expressions d’égalité redondantes pour C# et Visual BasicA code fix that removes redundant equality expressions for both C# and Visual Basic
- Les analyseurs de style de code .NET (IDE) peuvent maintenant être appliqués lors de la générationThe .NET Code Style (IDE) analyzers can now be enforced on build
- Le Syntax Visualizer affiche la couleur de premier plan actuelle pour les couleurs amélioréesThe Syntax Visualizer shows the current foreground color for enhanced colors
- Une nouvelle info-bulle lorsque vous pointez sur l’ID de diagnostic pour les avertissements pragmaA new tooltip when hovering over the diagnostic ID for pragma warnings
- Lorsque vous tapez la clé de retour dans un commentaire, la nouvelle ligne est maintenant automatiquement commentéeWhen you type the return key from within a comment the new line is now automatically commented out
- Améliorations des conseils de nom de paramètre inclusInline parameter name hints enhancements
C++C++
- Implémentation de la proposition Plus de propositions de conteneurs Constexpr, qui permet aux destructeurs et aux nouvelles expressions d’être Constexpr.Implementation of the More Constexpr Containers proposal, which allows destructors and new expressions to be constexpr. Cela ouvre la voie à des utilitaires tels que constexpr std::vector et std::string.This paves the way for utilities like constexpr std::vector and std::string.
- Support étendu des modules C++20 IntelliSense, y compris Atteindre la définition, Accéder au module et Saisie semi-automatique des membres.Extended support for C++20 modules IntelliSense, including Go To Definition, Go To Module, and member completion.
DébogueurDebugger
- Ajout d’un nouvel analyseur automatique qui inspecte la file d’attente du finaliseur .NET Core et détecte les objets potentiellement bloquants.Added a new Auto Analyzer that inspects the .NET Core Finalizer queue and detects potentially blocking objects.
- Débogage .NET Core avec WSL 2.NET Core Debugging with WSL 2
Mises à jour de l’éditeur Razor ExperimentalExperimental Razor Editor Updates
- Colorisation sémantique HTML et C#HTML and C# semantic colorization
- Renommer les symboles C# reflétés dans les fichiers Razor fermésRenames of C# symbols reflected in closed Razor files
- Autres ampoules C# dans les fichiers RazorMore C# light bulbs in Razor files
- Améliorations supplémentaires apportées à la mise en forme du contenu mixte dans les fichiers RazorFurther improvements to mixed content formatting in Razor files
Détail des nouveautés de Visual Studio 2019 version 16.9 Préversion 1Details of What's New in Visual Studio 2019 version 16.9 Preview 1
Productivité GitGit Productivity
- Envoyez (push) toutes les balises à partir de la fenêtre Modifications Git.Push all tags from the Git Changes window.

Productivité .NET.NET Productivity
- Il y a maintenant une refactorisation qui suggère l’utilisation de
new(…)
dans des scénarios sans litiges.There is now a refactoring that suggests usingnew(…)
in non-contentious scenarios. Placez votre curseur sur la déclaration de champ.Place your cursor on the field declaration. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Sélectionnez Utilisez « New (...) » .Select Use ‘new(…)’.
.png)
- Il existe désormais un correctif de code qui supprime les expressions d’égalité redondantes pour C# et Visual Basic.There is now a code fix that removes redundant equality expressions for both C# and Visual Basic. Placez le curseur sur l’expression d’égalité redondante.Place your cursor on the redundant equality expression. Appuyez sur (Ctrl+. + . ) pour déclencher le menu Actions rapides et refactorisations.Press (Ctrl+.) to trigger the Quick Actions and Refactorings menu. Sélectionnez Supprimer les d’égalité redondante.Select Remove redundant equality.

- Les analyseurs de style de code .NET (IDE) peuvent maintenant être appliqués lors de la génération.The .NET Code Style (IDE) analyzers can now be enforced on build. Vous pouvez installer les analyseurs de style de code .NET en tant que package NuGet pour C# et Visual Basic ou vous pouvez les activer dans Propriétés du projet.You can either install the .NET Code Style analyzers as a NuGet package for C# and Visual Basic or you can enable them in Project Properties. Pour accéder à la fenêtre Propriétés du projet, cliquez avec le bouton de droite sur un projet dans l’Explorateur de solutions, puis sélectionnez Propriétés.To access the Project Properties right-click on a project within Solution Explorer and select Properties. Ensuite, sélectionnez l’onglet Analyse du code dans lequel vous pouvez sélectionner Appliquer CodeStyle sur la build (expérimentale) .Next, select the Code Analysis tab where you can select Enforce CodeStyle on build (experimental).

- Syntax Visualizer (installé avec le kit de développement logiciel (SDK) .NET Compiler Platform) affiche désormais la couleur de premier plan actuelle pour les couleurs améliorées.The Syntax Visualizer (installed with the .NET Compiler Platform SDK) now shows the current foreground color for enhanced colors. Utilisez simplement le visualiseur pour accéder au texte pour lequel vous souhaitez modifier les couleurs ou sélectionnez dans l’éditeur, puis cliquez sur la couleur classifiée pour la modifier.Simply use the visualizer to navigate to the text you want to change colors for, or select in the editor, and then click on the classified color to change it.

- Il y a maintenant une info-bulle lorsque vous pointez sur l’ID de diagnostic pour les avertissements pragma.There is now a tooltip when hovering over the diagnostic ID for pragma warnings. L’info-bulle de diagnostic comporte également un lien sur lequel vous pouvez accéder à la documentation.The diagnostic tooltip also has a clickable link that navigates to the documentation.

- Lorsque vous tapez la clé de retour dans un commentaire, la nouvelle ligne est maintenant automatiquement commentée. Il s’agit d’une nouvelle option qui est activée par défaut.When you type the return key from within a comment you may notice that the new line is now automatically commented out. This is a new option that is on by default. Pour empêcher la nouvelle ligne de faire l’objet d’un commentaire automatique, accédez à Outils > Options > Éditeur de texte > C# ou De base > Avancé et décochez Insérer // au début des nouvelles lignes lors de l’écriture des commentaires // .To prevent the new line from automatically being commented out, go to Tools > Options > Text Editor > C# or Basic > Advanced and uncheck Insert // at the start of new lines when writing // comments.
Dans 16.8 Préversion 2 nous avons ajouté des conseils de nom de paramètre inclus qui insère des ornements pour des littéraux, des littéraux associés et d’instanciations d’objets avec chaque argument dans des appels de fonction.In 16.8 Preview 2 we added inline parameter name hints that inserts adornments for literals, casted literals, and object instantiations prior to each argument in function calls. Dans cette version, nous avons ajoutés les améliorations suivantes :In this release we added the following enhancements:
- Plus d’options de personnalisation pour les types d’ornements que vous souhaitez insérer.More customization options for the types of adornments you would like inserted.
- Conseils de type inclus pour les variables avec des types inférés et des types de paramètres lambda.Inline type hints for variables with inferred types and lambda parameter types.
- Option permettant de désactiver les conseils de nom de paramètre inclus lorsque les noms de paramètres correspondent à l’intention de la méthode et lorsque les noms de paramètres diffèrent uniquement par le suffixe.An option to disable inline parameter name hints when parameter names match the method’s intent and when parameter names differ only by suffix.
Outils XAML (WPF, UWP et Xamarin.Forms)XAML Tools (WPF, UWP & Xamarin.Forms)
Outils XAML (WPF, UWP et Xamarin.Forms)XAML Tools (WPF, UWP & Xamarin.Forms)
Support supplémentaire pour d’autres outils WinUI 3.0 est désormais disponible : Dans cette version, nous avons activé le support Rechargement à chaud XAML, Arborescence d'éléments visuels en direct, Explorateur de propriétés en direct et IntelliSense pour les développeurs qui génèrent des applications à l’aide de la nouvelle préversion 3 de WinUI 3.0 ou version ultérieure.Additional support for more WinUI 3.0 tooling is now available: In this release we have enabled XAML Hot Reload, Live Visual Tree, Live Property Explorer and IntelliSense support for developers building apps using the new WinUI 3.0 preview 3 or newer. Notez que Concepteur XAML n’est pas encore disponible et qu’il s’agit d’une limitation connue.Please note that XAML Designer is not yet available and is a known limitation. Pour en savoir plus sur WinUI 3.0, consultez la documentation et pour nous faire part de vos commentaires, visitez le référentiel Windows UI GitHub.To learn more about WinUI 3.0 see the documentation and to provide feedback visit the Windows UI XAML GitHub repo.
Actions suggérées de Concepteur XAML continuent à être disponibles dans cette version en tant que préversion anticipée.XAML Designer Suggested Actions continues to be available in this release as an early preview. Cette fonctionnalité permet d’accéder facilement aux propriétés courantes lorsqu’un contrôle est sélectionné dans le Concepteur XAML.This feature enables easy access to common properties when a control is selected within the XAML Designer. Pour utiliser cette fonctionnalité, vous devez d’abord l’activer via Options > Fonctionnalités en préversion > Actions suggérées en XAML.To use this feature first enable it through Options > Preview Features > XAML Suggested Actions. Une fois qu’elle est activée, cliquez sur un contrôle pris en charge, et utilisez l’ampoule pour développer et interagir avec l’interface utilisateur Actions suggérées.Once enabled click on a supported control and use the lightbulb to expand and interact with the Suggestion Actions UI. Dans cette version, les contrôles pris en charge sont les suivants :In this release supported controls include:
- Pour UWP : Border, Button, Canvas, CheckBox, ComboBox, Grid, HyperlinkButton, Image, ListBox, ListView, NavigationView, RadioButton, Slider, StackPanel, TextBlockFor UWP: Border, Button, Canvas, CheckBox, ComboBox, Grid, HyperlinkButton, Image, ListBox, ListView, NavigationView, RadioButton, Slider, StackPanel, TextBlock
- Pour WPF : Border, Button, Canvas, CheckBox, ComboBox, Grid, Image, Label, ListBox, ListView, StackPanel, TextBlock, TextBox.For WPF: Border, Button, Canvas, CheckBox, ComboBox, Grid, Image, Label, ListBox, ListView, StackPanel, TextBlock, TextBox.
Cette fonctionnalité est disponible pour les applications UWP, WPF .NET Core et WPF .NET Framework (avec l’indicateur de fonctionnalité « Nouveau Concepteur XAML WPF pour .NET Framework » activé). Elle ne prend pas en charge l’extensibilité et n’est pas complète.This feature is available for UWP, WPF .NET Core and WPF .NET Framework (with enabled “New WPF XAML Designer for .NET Framework” feature flag) applications and does not support extensibility, nor is it feature complete.

Actions suggérées en XAML - Extensibilité : Nous avons également récemment introduit une extensibilité pour les « actions suggérées ».XAML Suggested Actions - Extensibility: We've also introduced extensibility for 'Suggested Actions'. Vous pouvez désormais personnaliser et générer votre propre boîte de dialogue de suggestions pour vos contrôles.You can now customize and build your own suggestion dialog for your controls. Pour plus d’informations, consultez notre documentation dans GitHubFor more details see our documentation in GitHub
Le nouveau Concepteur XAML WPF pour les projets .NET Framework : Notre nouveau Concepteur XAML pour les projets .NET Framework est maintenant disponible en préversion anticipée.The New WPF XAML Designer for .NET Framework Projects: Our new XAML Designer for .NET Framework projects continues to be available for early preview. Grâce à cela, WPF .NET Framework peut bénéficier de la même prise en charge du concepteur et de l’extensibilité que celle disponible pour les développeurs WPF .NET Core.This brings the same designer and extensibility support available for WPF .NET Core developers to WPF .NET Framework. Les avantages de ce concepteur XAML amélioré incluent des performances de chargement plus rapides, la prise en charge de la configuration 64 bits (les contrôles personnalisés se chargent normalement comme dans une configuration x86), une stabilité améliorée et de nouvelles fonctionnalités telles que les actions suggérées.Benefits of this improved XAML designer includes faster load performance, 64-bit configuration support (custom controls would load normally just like they do in x86 configuration), improved stability and new features such as Suggested Actions.
- Pour commencer, accédez à Options > Fonctionnalités en préversion et sélectionnez « Nouveau concepteur WPF XAML pour .NET Framework », puis redémarrez Visual Studio.To get started, go to Options > Preview Features, select “New WPF XAML Designer for .NET Framework” and restart Visual Studio. Cette fonctionnalité n’est disponible que dans le canal Préversion pour les premiers tests. Les détails de sa version finale n’ont pas encore été déterminés.This feature is only available in the Preview channel for early testing; its final release details have not yet been determined. Nous encourageons tous les clients WPF .NET Framework à essayer ce concepteur et à nous signaler tous les problèmes qu’ils rencontrent par le biais du hub de commentaires de Visual Studio.We encourage all WPF .NET Framework customers to give this designer a try and report any issues you encounter through the VS Feedback Hub.
.NET.NET
- Le débogage .NET Core avec WSL 2 vous permet d’exécuter et de déboguer votre console .NET Core et vos applications web dans WSL 2 à partir de Visual Studio..NET Core Debugging with WSL 2 lets you run and debug your .NET Core console and web applications in WSL 2 from Visual Studio. Cela permet aux développeurs Windows ciblant des environnements de production Linux d’avoir une expérience de débogage locale avec une plus grande fidélité.This allows Windows developers targeting Linux production environments to have a higher fidelity local debugging experience.

Mises à jour de l’éditeur Razor ExperimentalExperimental Razor Editor Updates
- Colorisation sémantique HTML et C#HTML and C# semantic colorization
- Renommer les symboles C# reflétés dans les fichiers Razor fermésRenames of C# symbols reflected in closed Razor files
- Autres ampoules C# dans les fichiers Razor :More C# light bulbs in Razor files:
- Ajouter
DebuggerDisplay
attributAddDebuggerDisplay
attribute - Créer et attribuer une propriétéCreate and assign property
- Créer et attribuer un champCreate and assign field
- Implémentez une interface ou une classe abstraite, y compris le support de « avec modèle », c.-à-d. « Implémenter l’interface avec le modèle Dispose »Implement interface or abstract class, including support for "with pattern", i.e. "Implement interface with Dispose pattern"
- Générer Equals, Hachage, ConstructeurGenerate Equals, Hashcode, Constructor
- Ajouter
- Ajouter une vérification de valeurs Null et Ajouter toutes les vérifications de valeurs Null pour les paramètresAdd null check & Add all null checks for parameters
- Améliorations supplémentaires apportées à la mise en forme du contenu mixte dans les fichiers RazorFurther improvements to mixed content formatting in Razor files
Pour activer l’éditeur Razor Experimental, accédez à Outils > Options > Environnement > en préversion, sélectionnez Activer l’éditeur Razor Experimental, puis redémarrez Visual Studio.To enable the experimental Razor editor, go to Tools > Options > Environment > Preview Features, select Enable experimental Razor editor, and then restart Visual Studio.
À partir de Developer CommunityFrom Developer Community
- La boîte de dialogue « Recherche rapide » s’ouvre dans un autre groupe d’onglets (à gauche) que le fichier actuel dans le groupe d’onglets actuel à droite "Quick find" dialog opens in other tab group (left) other than current file in current tab group at right
- Respect de la casse lors de l’analyse des moisCase sensitivity when parsing months
- Impossible de compiler les applications WPF ciblant .NET 5 Cannot compile WPF applications targeting .NET 5
- VisualStudio 16.6.5 se bloque après avoir poursuivi une opération « modifier et continuer » pendant le débogage VisualStudio 16.6.5 crashes after continuing an "edit and continue" operation while debugging
- Syntaxe de l’éditeur JavaScript/bogue de mise en surbrillance IntelliSense Javascript editor syntax/intellisense highlighting bug
- Exécuter sans débogage ne fonctionne pas sur les projets Linux MSBuild Start without debugging does not work on MSBuild Linux projects
- SoftDebuggerSession.cs - la référence d’objet n’est pas définie à la ligne 1612 SoftDebuggerSession.cs - Object reference not set at line 1612
- MSVC 16.7 levant de manière incorrecte C2355 pour l’utilisation de ce pointeur sur l’initialisation dans le membre de classe non statique MSVC 16.7 incorrectly throwing C2355 for use of this pointer on initialization for in class non-static member
- Depuis la mise à jour de Xamarin vers la version 16.7, la build est encombrée d’avertissements Since Xamarin Update to V16.7, Build is Cluttered with Warnings
- La désactivation d’IntelliCode 2.2.733.31896 entraîne l’arrêt de TypeScript 3.x avec une CompositionFailedException lors de la modification d’un fichier .ts Disabling IntelliCode 2.2.733.31896 breaks TypeScript 3.x with a CompositionFailedException when editing a .ts file
- « La valeur ne peut pas être Null. Nom du paramètre : hiérarchie ». "Value cannot be null. Parameter name: hierachy".
- Typescript intellisense s’arrête tout le temps Typescript intellisense keeps stopping
- L’obtention de l’adresse de la fonction de membre héritée publiée avec le déclaration using échoue avec C2448 Getting address of inherited member function published with using-declaration fails with C2448
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 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.