Delen via


Opmerkingen bij de release van Visual Studio IconVisual Studio 2019 versie 16.0


Opmerking

Deze versie van Visual Studio 2019 wordt niet meer ondersteund. De meest recente ondersteunde versie is 16.11. Werk uw installatie bij of voer een upgrade uit naar de nieuwste versie van Visual Studio om ondersteund te blijven.

Zie de releasegeschiedenispagina voor een lijst met alle releaseopmerkingen voor Visual Studio 2019.

Belangrijk

Dit is niet de nieuwste versie van Visual Studio. Als u de nieuwste versie wilt downloaden, gaat u naar https://visualstudio.microsoft.com/downloads/ de releaseopmerkingen van Visual Studio 2022 en bekijkt u deze.


Visual Studio 2019 versie 16.0 Uitgaven

Visual Studio 2019-blog

De Visual Studio 2019-blog is de officiële bron van product insight van het Visual Studio Engineering-team. Hier vindt u uitgebreide informatie over de Visual Studio 2019-releases.


Pictogram Releaseopmerkingen Visual Studio 2019 versie 16.0.22

uitgebracht op 12 januari 2020

Beveiligingsadviesmelding voor 16.0.22

CVE-2021-1651 / CVE-2021-1680 Diagnostics Hub Standard Collector Service kwetsbaarheid door privilege-escalatie

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden wanneer de Diagnostics Hub Standard Collector gegevensbewerkingen onjuist verwerkt.

CVE-2020-26870 Beveiligingsprobleem met uitvoering van externe code in Visual Studio Installer

Er bestaat een beveiligingsprobleem met de uitvoering van externe code wanneer het Installatieprogramma van Visual Studio probeert schadelijke markdown weer te geven.


Pictogram Releaseopmerkingen Visual Studio 2019 versie 16.0.21

uitgebracht op 08 december 2020

Beveiligingsadviesmelding voor 16.0.21

CVE-2020-17156 Beveiligingsprobleem met uitvoering van Externe code in Visual Studio

Er bestaat een beveiligingsprobleem met de uitvoering van externe code wanneer Visual Studio een schadelijke opslagplaats kloont.


Releaseopmerkingen Pictogram Visual Studio 2019 versie 16.0.20

uitgebracht op 10 november 2020

Beveiligingsadviesmelding voor 16.0.20

CVE-2020-17100 Beveiligingsprobleem met manipulatie in Visual Studio

Er bestaat een beveiligingsprobleem met manipulatie wanneer de Python Tools voor Visual Studio de map python27 maakt. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan processen uitvoeren in een verhoogde context.


Releaseopmerkingenpictogram Visual Studio 2019 versie 16.0.19

uitgebracht op 13 oktober 2020

In deze release van 16.0.19

  • .NET Code SDK 2.1.616 toegevoegd aan Visual Studio 2019.

Releaseopmerkingen Pictogram Visual Studio 2019 versie 16.0.18

uitgebracht op 8 september 2020

Probleem opgelost in 16.0.18

  • Niet-ondersteuningsversies van .NET Core worden niet meer opnieuw geïnstalleerd tijdens een reparatie of upgrade als ze buiten de VS-installatie zijn verwijderd.

Beveiligingsadviesmelding voor 16.0.18

CVE-2020-1130 Beveiligingsprobleem met diagnostische hub standard collector-uitbreiding van bevoegdheden

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden wanneer de Diagnostics Hub Standard Collector gegevensbewerkingen onjuist verwerkt. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan processen uitvoeren in een verhoogde context.

CVE-2020-1133 Kwetsbaarheid voor verhoogde bevoegdheid in Diagnostics Hub Standard Collector

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden wanneer de Diagnostics Hub Standard Collector bestandsbewerkingen onjuist verwerkt. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan processen uitvoeren in een verhoogde context.

CVE-2020-16856 Beveiligingsprobleem met uitvoering van Externe code in Visual Studio

Er bestaat een beveiligingsprobleem met de uitvoering van externe code in Visual Studio wanneer objecten in het geheugen onjuist worden verwerkt. Een aanvaller die het beveiligingsprobleem heeft misbruikt, kan willekeurige code uitvoeren in de context van de huidige gebruiker.

CVE-2020-16874 Beveiligingsprobleem met uitvoering van Externe code in Visual Studio

Er bestaat een beveiligingsprobleem met de uitvoering van externe code in Visual Studio wanneer objecten in het geheugen onjuist worden verwerkt. Een aanvaller die het beveiligingsprobleem heeft misbruikt, kan willekeurige code uitvoeren in de context van de huidige gebruiker.

CVE-2020-1045 Beveiligingsprobleem met Microsoft ASP.NET Core Security Feature Bypass

Er bestaat een beveiligingsfunctie omzeilingsprobleem in de manier waarop Microsoft ASP.NET Core gecodeerde cookienamen parseert. Dezelfde ASP.NET Core cookie parser decodeert volledige cookietekststrings, waardoor een kwaadwillende aanvaller een tweede cookie kan plaatsen met een naam die percentueel gecodeerd is.


Pictogram voor releaseopmerkingen Visual Studio 2019 versie 16.0.17

uitgebracht op 11 augustus 2020

Probleem opgelost in 16.0.17

Beveiligingsadviesmelding voor 16.0.17

CVE-2020-1597 ASP.NET Core Denial of Service Vulnerability

Er bestaat een denial of service-beveiligingsprobleem wanneer ASP.NET Core webaanvragen onjuist verwerkt. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan een denial of service veroorzaken voor een ASP.NET Core-webtoepassing. Het beveiligingsprobleem kan extern worden misbruikt, zonder verificatie.


Pictogram Releaseopmerkingen Visual Studio 2019 versie 16.0.16

uitgebracht op 14 juli 2020

Problemen opgelost in 16.0.16

Beveiligingsadviesmelding voor 16.0.16

CVE-2020-1393 Diagnostische hub Standard Collector Service-uitbreiding van beveiligingsprobleem met bevoegdheden

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden wanneer de Windows Diagnostics Hub Standard Collector-service invoer niet goed kan opschonen, wat leidt tot een onbeveiligd gedrag bij het laden van bibliotheken.

CVE-2020-1416 Beveiligingsprobleem met betrekking tot uitbreiding van bevoegdheden in Visual Studio

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden in Visual Studio wanneer softwareafhankelijkheden worden geladen.

CVE-2020-1147 .NET Core Denial of Service Vulnerability

Een externe niet-geverifieerde aanvaller kan dit beveiligingsprobleem misbruiken door speciaal gemaakte aanvragen uit te geven aan een ASP.NET Core-toepassing of een andere toepassing die bepaalde typen XML parseert. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door de typen te beperken die aanwezig mogen zijn in de XML-nettolading.


Pictogram Releaseopmerkingen Visual Studio 2019 versie 16.0.15

uitgebracht op 09 juni 2020

Problemen opgelost in 16.0.15

Beveiligingsadviesmelding voor 16.0.15

CVE-2020-1108 / CVE-2020-1108.NET Core Denial of Service Vulnerability

Microsoft heeft updates uitgebracht voor .NET Core 2.1 en .NET Core 3.1 om CVE-2020-1108 uitgebreid aan te pakken. Klanten die een van deze versies van .NET Core gebruiken, moeten de nieuwste versie van .NET Core installeren. Zie de releaseopmerkingen voor de meest recente versienummers en instructies voor het bijwerken van .NET Core.

CVE-2020-1202 / CVE-2020-1203 Diagnostische hub Standard Collector Service-uitbreiding van beveiligingsprobleem met bevoegdheden

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden wanneer de Diagnostics Hub Standard Collector of de Visual Studio Standard Collector objecten in het geheugen niet goed kan verwerken.

CVE-2020-1293 / CVE-2020-1278 / CVE-2020-1257 Diagnostische hub Standard Collector Service-uitbreiding van beveiligingsprobleem met bevoegdheden

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden wanneer de Diagnostics Hub Standard Collector Service bestandsbewerkingen onjuist verwerkt


Pictogram Releaseopmerkingen Visual Studio 2019 versie 16.0.14

uitgebracht op 12 mei 2020

Problemen opgelost in 16.0.14

  • Er is een wijziging toegevoegd waarmee IT-beheerders en implementatietechnici voor ondernemingen hulpprogramma's zoals Microsoft Update-client en SCCM kunnen configureren om de toepasbaarheid van VS2019 16.0-updates te bepalen die worden gehost op Microsoft Update Catalog & WSUS.

Beveiligingsadviesmelding voor 16.0.14

CVE-2020-1108 .NET Core Denial of Service Vulnerability

Een externe niet-geverifieerde aanvaller kan dit beveiligingsprobleem misbruiken door speciaal gemaakte aanvragen uit te geven aan de .NET Core-toepassing. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door te corrigeren hoe de .NET Core-webtoepassing webaanvragen verwerkt.


Releaseopmerkingenpictogram Visual Studio 2019 versie 16.0.13

uitgebracht op 14 april 2020

Beveiligingsadviesmelding voor 16.0.13

CVE-2020-0899 Beveiligingsprobleem met uitbreiding van bevoegdheden in Microsoft Visual Studio

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden wanneer de Updater-service van Microsoft Visual Studio bestandsmachtigingen onjuist verwerkt. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan willekeurige bestandsinhoud overschrijven in de beveiligingscontext van het lokale systeem.

CVE-2020-0900 Beveiligingslek in de Visual Studio Extension Installer Service met betrekking tot privilegeverhoging

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden wanneer de Visual Studio Extension Installer-service bestandsbewerkingen onjuist verwerkt. Een aanvaller die het beveiligingsprobleem heeft misbruikt, kan bestanden verwijderen op willekeurige locaties met verhoogde machtigingen.

CVE-2020-5260 Git voor Visual Studio inloggegevenslek door onvoldoende validatie van URL's

Er bestaat een beveiligingsprobleem met betrekking tot referentielekken wanneer speciaal gemaakte URL's worden geparseerd en verzonden naar referentiehelpers. Dit kan ertoe leiden dat referenties naar de verkeerde host worden verzonden.


Pictogram Release Notes Icon Visual Studio 2019 versie 16.0.12

uitgebracht op 10 maart 2020

Problemen opgelost in 16.0.12

Kennisgeving van beveiligingsadvies

CVE-2020-0793 & CVE-2020-0810 Diagnostics Hub Standard Collector Service-uitbreiding van beveiligingsprobleem met bevoegdheden

Er bestaat een beveiligingsprobleem met onrechtmatige uitbreiding van bevoegdheden wanneer de Diagnostics Hub Standard Collector bestandsbewerkingen onjuist verwerkt, of de Standard Collector-service van Windows Diagnostics Hub kan invoer niet correct opschonen.

CVE-2020-0884 Beveiligingsprobleem met adresvervalsing bij het maken van een Outlook Web-Add-in

Er is een kwetsbaarheid voor spoofing bij het maken van een Outlook-Web-Addin als meervoudige authenticatie is ingeschakeld

CVE-2020-0789 Visual Studio-extensie-installatieservice Dienstonderbrekingskwetsbaarheid

Er bestaat een denial of service-beveiligingsprobleem wanneer de Visual Studio Extension Installer-service harde koppelingen onjuist verwerkt. Een aanvaller die het beveiligingsprobleem heeft misbruikt, kan ertoe leiden dat een doelsysteem niet meer reageert.


Pictogram Releaseopmerkingen Visual Studio 2019 versie 16.0.11

uitgebracht op 14 januari 2020

Kennisgeving van beveiligingsadvies

CVE-2020-0602 ASP.NET Core Denial of Service Vulnerability

Een externe niet-geverifieerde aanvaller kan dit beveiligingsprobleem misbruiken door speciaal gemaakte aanvragen uit te geven aan de ASP.NET Core-toepassing. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door te corrigeren hoe de ASP.NET Core-webtoepassing webaanvragen verwerkt.

CVE-2020-0603 ASP.NET Core Kwetsbaarheid voor uitvoering van externe code

Een externe niet-geverifieerde aanvaller kan dit beveiligingsprobleem misbruiken door speciaal gemaakte aanvragen uit te geven aan de ASP.NET Core-toepassing. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door te corrigeren hoe de ASP.NET Core-webtoepassing in het geheugen wordt verwerkt.


Pictogram voor Releaseopmerkingen Visual Studio 2019 versie 16.0.10

uitgebracht op 10 december 2019

Problemen opgelost in 16.0.10

Kennisgeving van beveiligingsadvies

CVE-2019-1349 Git voor Visual Studio Remote Execution-kwetsbaarheid door te losse beperkingen op submodule-namen

Er bestaat een beveiligingsprobleem met de uitvoering van externe code wanneer Git conflicten met submodulenamen voor directory's van onderliggende submodules tegenkomt. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan op afstand code uitvoeren op de doelcomputer. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door een nieuwe versie van Git voor Windows te gebruiken. Hiervoor moet de map voor de kloon van de submodules leeg zijn.

CVE-2019-1350 Git for Visual Studio Remote Execution-kwetsbaarheid vanwege het onjuist quoten van opdrachtregelargumenten

Er is er sprake van een kwetsbaarheid voor uitvoering van externe code wanneer Git commandoregelargumenten interpreteert met bepaalde citaten tijdens het recursief klonen in combinatie met SSH-URL's. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan op afstand code uitvoeren op de doelcomputer. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door een nieuwe versie van Git voor Windows te gebruiken waarmee het probleem wordt opgelost.

CVE-2019-1351 Git voor Visual Studio Willekeurige Bestandsoverschrijvingskwetsbaarheid wegens het gebruik van niet-letter stationnamen tijdens het klonen

Er is sprake van een willekeurig bestandsoverschrijven in Git wanneer stationsnamen zonder letters veiligheidscontroles overslaan in git clone. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan naar willekeurige bestanden op de doelcomputer schrijven. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door een nieuwe versie van Git voor Windows te gebruiken waarmee het probleem wordt opgelost.

CVE-2019-1352 Git voor Visual Studio Remote Excecution Vulnerability due to unawareness of NTFS Alternate Data Streams

Er bestaat een beveiligingsprobleem met de uitvoering van externe code in Git bij het klonen en schrijven naar .git/directory via ALTERNATIEVE NTFS-gegevensstromen. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan op afstand code uitvoeren op de doelcomputer. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door een nieuwe versie van Git voor Windows te gebruiken. Deze versie is op de hoogte gesteld van alternatieve NTFS-gegevensstromen.

CVE-2019-1354 Git voor Visual Studio Willekeurige Bestandsoverschrijving Kwetsbaarheid doordat het weigeren ontbrak om bijgehouden bestanden met backslashes uit te schrijven

Er bestaat een willekeurige bestandsoverschrijvingskwetsbaarheid in Git wanneer boomvermeldingen met backslashes en schadelijke symlinks uit de werkboom kunnen ontsnappen. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan naar willekeurige bestanden op de doelcomputer schrijven. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door een nieuwe versie van Git voor Windows te gebruiken die dit gebruik van backslashes niet toestaat.

CVE-2019-1387 Git for Visual Studio Remote Execution Vulnerability vanwege te lakse validatie van submodule namen in recursieve klonen

Er bestaat een beveiligingsprobleem met de uitvoering van externe code in Git bij het recursief klonen met submodules. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan op afstand code uitvoeren op de doelcomputer. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door een nieuwe versie van Git voor Windows te gebruiken, waardoor de validatie van submodulenamen wordt aangescherpt.

CVE-2019-1486 Beveiligingsprobleem met URL-omleiding van liveshare-extensie

Er is een beveiligingsprobleem met adresvervalsing gedetecteerd in de Visual Studio Live Share-extensie, toen een gast die is verbonden met een Live Share-sessie werd omgeleid naar een willekeurige URL die is opgegeven door de sessiehost. Een aanval zou dit beveiligingsprobleem kunnen misbruiken en ervoor zorgen dat de computer van de gast een browser opent en zonder expliciete toestemming naar een schadelijke URL navigeert. Dit was onderdeel van de functie Gedeelde server van Live Share die automatisch doorsturen via poort toestaat tijdens een actieve livesharesessie. Met de meest recente update wordt dit beveiligingsprobleem opgelost door de Live Share-gast om toestemming te geven voordat hij door de URL bladert die door de host is opgegeven.


Pictogram releaseopmerkingen Visual Studio 2019 versie 16.0.9

uitgebracht op 15 oktober 2019

Kennisgeving van beveiligingsadvies

CVE-2019-1425 NPM Package Elevation of Privilege Vulnerability (gepubliceerd op 12 november 2019)

Er bestaat een beveiligingsprobleem met onrechtmatige uitbreiding van bevoegdheden wanneer Visual Studio hardlinks niet goed kan valideren bij het extraheren van gearchiveerde bestanden. De beveiligingsproblemen zijn geïntroduceerd door NPM-pakketten die door Visual Studio worden gebruikt, zoals beschreven in de volgende twee NPM-adviezen: npmjs.com/advisories/803 en npmjs.com/advisories/886. De bijgewerkte versies van deze NPM-pakketten zijn opgenomen in deze versie van Visual Studio.


Pictogram voor Releaseopmerkingen Visual Studio 2019 versie 16.0.8

uitgebracht op 10 september 2019

Problemen opgelost in Visual Studio 2019 versie 16.0.8

Kennisgeving van beveiligingsadvies

CVE-2019-1232 Diagnostics Hub Standard Collector Service toename van bevoegdhedenkwetsbaarheid

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden wanneer de Diagnostics Hub Standard Collector Service bepaalde bestandsbewerkingen onjuist imiteert. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan verhoogde bevoegdheden krijgen. Een aanvaller met onbevoegde toegang tot een kwetsbaar systeem kan dit beveiligingsprobleem misbruiken. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door ervoor te zorgen dat de Diagnostics Hub Standard Collector Service bestandsbewerkingen correct imiteert.


Releaseopmerkingen Pictogram Visual Studio 2019 versie 16.0.7

uitgebracht op 13 augustus 2019

Problemen opgelost in Visual Studio 2019 versie 16.0.7

Kennisgeving van beveiligingsadvies

CVE-2019-1211 Git voor Visual Studio kwetsbaarheid door opwaardering van rechten

Er bestaat een beveiligingsprobleem met onrechtmatige uitbreiding van bevoegdheden in Git voor Visual Studio wanneer configuratiebestanden onjuist worden geparseerd. Een aanvaller die het beveiligingsprobleem heeft misbruikt, kan code uitvoeren in de context van een andere lokale gebruiker. Om het beveiligingsprobleem te misbruiken, moet een geverifieerde aanvaller Git-configuratiebestanden op een systeem wijzigen vóór een volledige installatie van de toepassing. De aanvaller moet vervolgens een andere gebruiker op het systeem overtuigen om specifieke Git-opdrachten uit te voeren. De update lost het probleem op door de machtigingen te wijzigen die nodig zijn om configuratiebestanden te bewerken.

**CVE-2019-1301: Denial of Service Vulnerability in .NET Core

Er bestaat een denial of service-beveiligingsprobleem wanneer .NET Core webaanvragen onjuist verwerkt. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan een Denial of Service veroorzaken voor een .NET Core-webtoepassing. Het beveiligingsprobleem kan extern worden misbruikt, zonder verificatie.

De update lost het beveiligingsprobleem op door te corrigeren hoe de .NET Core-webtoepassing webaanvragen verwerkt.


Pictogram Releaseopmerkingen Visual Studio 2019 versie 16.0.6

uitgebracht op 9 juli 2019

Problemen opgelost in Visual Studio 2019 versie 16.0.6

  • Ondersteuning voor Verteller is verbeterd op systemen met Windows 10 versie 1903 of met .NET 4.8 geïnstalleerd.

Kennisgeving van beveiligingsadvies

CVE-2019-1075 ASP.NET Beveiligingsprobleem met kernvervalsing

.NET Core-updates zijn vandaag uitgebracht en zijn opgenomen in deze Visual Studio-update. In deze release worden beveiligings- en andere belangrijke problemen opgelost. Meer informatie vindt u in de releaseopmerkingen van .NET Core .

CVE-2019-1077 Visual Studio Extension Automatische Updatekwetsbaarheid

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden wanneer het automatische bijwerkproces van de Visual Studio-extensie bepaalde bestandsbewerkingen onjuist uitvoert. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan bestanden op willekeurige locaties verwijderen. Om dit beveiligingsprobleem te misbruiken, zou een aanvaller onbevoegde toegang tot een kwetsbaar systeem nodig hebben. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door locaties te beveiligen waarin de automatische update van de Visual Studio-extensie bestandsbewerkingen uitvoert.

CVE-2019-1113 WorkflowDesigner XOML-deserialisatie staat het uitvoeren van code toe

Een XOML-bestand dat naar bepaalde typen verwijst, kan ertoe leiden dat willekeurige code wordt uitgevoerd wanneer het XOML-bestand wordt geopend in Visual Studio. Er is nu een beperking voor welke typen mogen worden gebruikt in XOML-bestanden. Als een XOML-bestand met een van de nieuw niet-geautoriseerde typen wordt geopend, wordt er een bericht weergegeven waarin wordt uitgelegd dat het type niet gemachtigd is.

Raadpleeg https://support.microsoft.com/help/4512190/remote-code-execution-vulnerability-if-types-are-specified-in-xomlvoor meer informatie.


Releaseopmerkingen-pictogram Visual Studio 2019 versie 16.0.5

uitgebracht op 11 juni 2019

Problemen opgelost in Visual Studio 2019 versie 16.0.5


Pictogram voor Releaseopmerkingen Visual Studio 2019 versie 16.0.4

uitgebracht op 14 mei 2019

Problemen opgelost in Visual Studio 2019 versie 16.0.4

Kennisgeving van beveiligingsadvies

CVE-2019-0727 Diagnostics Hub Standard Collector Service Verhoging van bevoegdheidskwetsbaarheid

Er bestaat een beveiligingsprobleem met uitbreiding van bevoegdheden wanneer de Diagnostics Hub Standard Collector Service bepaalde bestandsbewerkingen onjuist uitvoert. Een aanvaller die dit beveiligingsprobleem heeft misbruikt, kan bestanden op willekeurige locaties verwijderen. Om dit beveiligingsprobleem te misbruiken, zou een aanvaller onbevoegde toegang tot een kwetsbaar systeem nodig hebben. Met de beveiligingsupdate wordt het beveiligingsprobleem opgelost door locaties te beveiligen waarin de Standard Collector voor diagnostische hubs bestandsbewerkingen uitvoert.


Pictogram Releaseopmerkingen Visual Studio 2019 versie 16.0.3

uitgebracht op 30 april 2019

Wat is er nieuw in Visual Studio 2019 versie 16.0.3

  • Visual Studio Tools voor Kubernetes ondersteunt nu de nieuwste Azure Dev Spaces.

Problemen opgelost in Visual Studio 2019 versie 16.0.3


Releasenotitiespictogram Visual Studio 2019 versie 16.0.2

uitgebracht op 18 april 2019

Problemen opgelost in Visual Studio 2019 versie 16.0.2


Pictogram Releaseopmerkingen Visual Studio 2019 versie 16.0.1

uitgebracht op 09 april 2019

Problemen opgelost in Visual Studio 2019 versie 16.0.1


Pictogram Release Notes Icon Visual Studio 2019

uitgebracht op 02 april 2019

Samenvatting van wat is er nieuw in Visual Studio 2019

Install

IDE

  • Werk samen met anderen met Visual Studio Live Share. Deze is standaard geïnstalleerd. Aanvullende taalondersteuning voor C++, VB.NET en Razor biedt gasten een oplossingsweergave en het delen van bronbeheer diffs.
  • Open code waaraan u onlangs hebt gewerkt of begin met een van de meest gebruikte stromen, zoals klonen, openen of maken van een project via het nieuwe beginvenster.
  • Nieuwe projecten maken met een verbeterde zoekervaring en filters met behulp van de nieuwe lijst met sjablonen gesorteerd op populariteit.
  • Zorg voor meer verticale ruimte voor uw code en een gemoderniseerd uiterlijk door een reeks nieuwe visuele wijzigingen in de shell.
  • Omdat we de ondersteuning voor bewustzijn per monitor hebben verbeterd, kunt u een scherpere versie van uw IDE bekijken, ongeacht uw weergaveconfiguratie en/of schaalaanpassing.
  • Gebruik een verbeterde zoekfunctie in Visual Studio voor menu's, opdrachten, opties en installeerbare onderdelen.
  • Krijg snel inzicht in de status van uw codebestand met een documentindicator . Voer een codeopruiming met één klik uit en configureer deze vanuit de indicator.
  • Beheer eenvoudig de preview-functies waarvoor u bent aangemeld met een nieuwe pagina Preview-functies in het dialoogvenster Opties.
  • Maak nieuwe projecten met verbeteringen in zoekopdrachten op basis van tags en een eenvoudig toegankelijke lijst 'Recente projectsjablonen'.
  • Maak nieuwe items rechtstreeks vanuit Visual Studio Search en zoek sneller resultaten met verbeterde relevantie.
  • Blijf op de hoogte van belangrijke informatie, zoals Visual Studio Live Share-aanvragen, met een nieuwe meldingenervaring.
  • Sla een verzameling fixers voor codeopruiming op als profiel om eenvoudig de fixers te selecteren die u wilt uitvoeren tijdens het opschonen van code.
  • Activeer nieuwe .NET-refactoring en code-oplossingen.
  • Configureer .NET Core-projecten eenvoudiger met eersteklas projectbestanden.
  • Bekijk de status van uw extensies met preview-, betaalde en proeftags in het dialoogvenster Extensies en updates.
  • Controleer en configureer welke preview-functies u actief wilt hebben sinds de standaardinstellingen opnieuw zijn ingesteld in deze preview.
  • Houd uw extensies up-to-date door bepaalde Test Window-API's uit te sluiten die zijn gemarkeerd als afgeschaft in deze release.
  • Meld u aan en blader, en kloon of maak met één klik verbinding met uw gehoste opslagplaatsen vanuit Azure DevOps via het beginvenster.
  • Installeer extensies voor andere hosts voor broncodebeheer om opslagplaatsen te bekijken die eigendom zijn van u en uw organisatie.
  • Ervaar een verbeterd blauw thema dat feedback verwerkt door de helderheid te verminderen, het algehele contrast te verbeteren en andere gebruiksvriendelijkheidsproblemen aan te pakken.
  • Pas voorkeuren voor codestijlen toe vanaf de opdrachtregel met het globale hulpprogramma dotnet format.
  • MSBuild en Visual Studio richten zich nu standaard op .NET Framework 4.7.2.
  • We hebben azure App Service-gerelateerde functies verwijderd uit Server Explorer; Equivalente functionaliteit is in plaats daarvan beschikbaar in Cloud Explorer.

Performance

Algemene foutopsporing en diagnostische gegevens

  • Zoek trefwoorden in de vensters Watch, Autos en Locals tijdens foutopsporing om uw vermogen om objecten of waarden te vinden te verbeteren.
  • Bekijk een dropdownlijst met opmaakaanduidingen in de vensters Watch, Autos en Locals tijdens het inspecteren van gegevens.
  • Gebruik een aangepaste visualisatie die nu compatibel is met .NET Core.
  • Fouten opsporen in zeer grote toepassingen met grote aantallen modules en PDBs.
  • Start Google Chrome met aangepaste argumenten en debug uw JavaScript-toepassingen in de Visual Studio IDE.
  • Gebruik Hot Path Highlighting voor hulpprogramma's voor CPU- en DotNet-objecttoewijzing in de Performance Profiler.
  • Breek wanneer de eigenschapswaarde van een specifiek object verandert in .NET Core 3.0+ applicaties met behulp van data breakpoints, een functie die oorspronkelijk exclusief was voor C++.
  • Sinds preview 1 hebben we de gebruikersinterface bijgewerkt voor het zoeken in de vensters Auto's, Locals en Watch met een eenvoudigere interface. De functie Search Deeper is gewijzigd in een vervolgkeuzelijst, zodat u snel kunt selecteren hoe diep uw eerste en volgende zoekopdrachten moeten zijn.

Broncodebeheer en Teamverkenner

  • Sla wijzigingen tijdelijk op, zodat u aan een andere taak kunt werken met behulp van de Git-hulpprogramma's van Team Explorer voor Git Stash.
  • Bekijk de optionele extensie die beschikbaar is op visual Studio Market Place, pull-aanvragen voor Visual Studio, waarmee pull-aanvraagbeoordelingen worden geïntegreerd in Visual Studio.
  • Gebruik de nieuwe Azure DevOps-werkitemervaring die is gericht op werkstromen voor ontwikkelaars, waaronder weergaven van gebruikersspecifieke werkitems, het maken van een vertakking van een werkitem, het zoeken naar werkitems met #mentions en inlinebewerking.

Extensibility

  • Gebruik één geïntegreerde Visual Studio SDK in het NuGet-pakket Microsoft.VisualStudio.SDK.
  • Profiteer van onze update van het VSIX-project om nu een AsyncPackage toe te voegen.
  • Experimenteer met een nieuwe lege VSIX-projectsjabloon die we hebben toegevoegd.
  • Weet of een extensie gratis, betaald of proefabonnement is, zoals deze nu wordt aangegeven in het dialoogvenster Extensies en updates .

Programmeertalen

C#

Bekijk een preview van de 8.0-taalfuncties die de C#-compiler nu ondersteunt, waaronder:

  • Null-verwijzingstypen: wanneer de functie is ingeschakeld (bijvoorbeeld met #nullable enable of op projectniveau met <NullableContextOptions>enable</NullableContextOptions>), worden verwijzingstypen als null-baar beschouwd als ze zijn voorzien van ?, en anders als niet-nullbaar. De compiler analyseert vervolgens waar null-waarden stromen en waarschuwt voor waarschijnlijk onveilig gebruik.
  • switch expressies: Biedt switch-achtige semantiek in een expressiecontext.
  • Recursieve patroonkoppeling: nieuwe patronen maken het mogelijk om velden/eigenschappen en positionele elementen (van tuples of deconstructie) te testen.
  • Ondersteuning voor Range en Index typen die worden gebruikt in CoreFX voor segmentering, inclusief de x..y letterlijke syntaxis voor bereiken.
  • Asynchrone streams die worden vertegenwoordigd door IAsyncEnumerable<T> kunnen asynchroon worden opgesomd met await foreach en kunnen worden geproduceerd met async IAsyncEnumerable<T>-iteratormethoden.
  • using declaraties: Weggooien aan het einde van het huidige blok, zonder het nestniveau te verhogen. ref structs kunnen worden verwijderd door een openbare Dispose() methode te implementeren.
  • static lokale functies: Lokale functies die zijn gemarkeerd met static kunnen geen verwijzing maken naar this of variabelen in de omgevende functies.
  • Lokale functies en lambdas kunnen nu parameters en lokalen declareren die de namen van variabelen van de omsluitende functies overschrijven.
  • Null-coalescing toewijzing: x ??= y; wijst y alleen toe aan x als xnull was.

Meer informatie vindt u in het overzicht van Mads van C# 8.0.

Zie de status van de C#-taalfunctie en belangrijke wijzigingen voor meer informatie.

Daarnaast kunt u standaard modernere C#-taalfuncties in Visual Studio gebruiken.

C++
  • Bespaar tijd bij het schrijven van C++ en XAML-code met behulp van Visual Studio IntelliCode, een optionele extensie die AI-ondersteuning biedt voor uw code.
  • Ervaar code-analysewaarschuwingen in de editor. Codeanalyse wordt automatisch uitgevoerd op de achtergrond en waarschuwingen worden weergegeven als groene golvende lijnen.
  • Probeer de nieuwe sjabloonbalk, die gebruikmaakt van de Peek-venster-UI en ondersteuning biedt voor geneste sjablonen.
  • Voer de nieuwe, bijgewerkte implementatie van de C++ Levensduurprofielcontrole uit.
  • Configureer uw CMake-projecten met behulp van de nieuwe CMake Settings Editor, die een alternatief biedt voor CMakeSettings.json.
  • Probeer een groot aantal back-endverbeteringen uit, waaronder OpenMP SIMD-vectorisatie, tijdversnellingen bij koppelingen en agressievere inlining.
  • Open bestaande CMake-caches die zijn gegenereerd door externe hulpprogramma's, zoals CMakeGUI of aangepaste meta-buildsystemen.
  • Verbeter de analyse met /Qspectre voor het bieden van mitigatiehulp voor Spectre Variant 1 (CVE-2017-5753). Zie het blogbericht visual C++ team voor meer informatie.
  • Schakel snel tussen de vorige voorbeeldargumenten nu de sjabloonbalk voor SjabloonIntelliSense een vervolgkeuzelijst Laatst gebruikt heeft.
F#
  • F# 4.6 wordt uitgebracht, samen met verschillende andere compilerverbeteringen.
  • Prestatieverbeteringen ervaren voor grotere oplossingen en verschillende bugfixes voor F# en de F#-hulpprogramma's.
  • Meer informatie over enkele van het geweldige werk dat is gedaan door opensource-inzenders voor de F#-taal en -hulpprogramma's.
JavaScript/TypeScript-
Python
  • Voeg eenvoudig virtuele Python- en Conda-omgevingen toe met behulp van het dialoogvenster Python-omgeving toevoegen.
  • Werk eenvoudiger met Python-omgevingen, waaronder verbeterde ondersteuning voor Open Folder-werkruimten met behulp van een nieuwe werkbalk van de Python-omgevingskiezer.
  • Maak Visual Studio Live Share-sessies en werk samen aan Python-code met andere Visual Studio-gebruikers.

Webtechnologieën

Containerhulpprogramma's

Mobiele ontwikkeling met Xamarin

Universal Windows Platform (UWP)

  • Bewaar opmerkingen, afstand, naamruimten en eventuele andere tekstwijzigingen bij het aanbrengen van wijzigingen vanuit de ontwerpfunctie. De pakketmanifestontwerper handhaaft nu een strikte overeenstemming met XML-wijzigingen in het bestand Package.appxmanifest.
  • Gebruik het Project Windows Application Packaging voor .NET Core-projecten om MSIX-pakketten te produceren.
  • Gebruik de wizard Pakket maken voor directe Microsoft Store-inzendingen.
  • Implementatie op Windows Mobile-apparaten wordt niet meer ondersteund in Visual Studio 2019. Pogingen om te implementeren op een Windows 10 Mobile-apparaat resulteren in een fout met de mededeling 'Implementatie op Windows Mobile-apparaten wordt niet ondersteund in Visual Studio 2019'. Als u wilt blijven werken aan een toepassing voor Windows 10 Mobile-apparaten, gebruikt u Visual Studio 2017.

Hulpprogramma's voor foutopsporing van XAML:

  • XAML Edit & Continue ondersteunt nu x:bind (UWP): XAML Edit & Continue ondersteunt nu het bewerken van gegevensbindingen die zijn gemaakt met x:bind voor paden met openbare eigenschappen, elementnaam, geïndexeerde eigenschapspaden (verzamelingen), gekoppelde eigenschappen en cast-eigenschappen. Andere wijzigingen worden niet ondersteund. Deze uitbreiding is beschikbaar voor elke app waarbij de minimale en maximale versies gericht zijn op Windows 10 SDK-versie 1809 (build 10.0.17763) of hoger. (Opmerking: XAML Edit & Continue wordt nu XAML Hot Reload genoemd vanaf Visual Studio 2019 Update 2+).

SQL Server Datahulpmiddelen

  • Ervaar een bijgewerkte SSDT en DacFX die nu UTF-8-sorteringsondersteuning bevat.

Details van wat nieuw is in Visual Studio 2019

Install

  • U kunt nu kiezen hoe u Visual Studio-updates installeert. De standaardmodus is 'Alles downloaden en vervolgens installeren' waarmee u Visual Studio kunt blijven gebruiken terwijl updates worden gedownload. Als u 'Alles downloaden en vervolgens installeren' selecteert, moet u de installatie voltooien door het installatieprogramma van Visual Studio te openen en Doorgaan te selecteren.
  • Visual Studio-updates worden nu op de achtergrond gedownload. Deze downloads worden alleen uitgevoerd wanneer uw computer niet actief is. Wanneer de downloads zijn voltooid, krijgt u een melding in Visual Studio dat uw download nu gereed is voor installatie.
  • U kunt nu de installatiemodus voor updates beheren en of u updates wilt downloaden of niet via het menu Extra > opties door de instellingen op de pagina Productupdates te wijzigen.
Opties voor productupdates
*Opties voor productupdates*

Startvenster

Het nieuwe startvenster biedt een gestroomlijnde startervaring, zodat u snel toegang krijgt tot uw code bij het starten van Visual Studio.

  • Bekijk uw recente projecten en mappen en open ze met één klik. Items uit de lijst vastmaken en verwijderen via het contextmenu.
  • Code klonen of uitchecken met behulp van een openbare of persoonlijke Git-URL, waarmee de map ook automatisch wordt geopend in de IDE.
  • Meld u aan, blader en klik op kloon of maak verbinding met uw gehoste opslagplaatsen vanuit Azure DevOps of installeer extensies voor andere broncodebeheerhosts om opslagplaatsen te bekijken die eigendom zijn van u en uw organisatie.
  • Blader door uw lokale schijf of netwerkshare voor projecten, oplossingen of mappen met code en open deze in de IDE.
  • Selecteer een projectsjabloon waarmee u code-scaffolding krijgt om u te helpen aan de slag te gaan met een nieuw project of nieuwe oplossing.
  • Zoek naar projectsjablonen op titel, beschrijving en tags of filter door beschikbare talen, platforms en projecttypen. In de standaardlijst worden alle beschikbare sjablonen weergegeven, terwijl een lijst met de tien meest recent gebruikte projectsjablonen in het linkerdeelvenster wordt weergegeven voor snelle toegang. Met een wizard met twee pagina's kunt u zich concentreren op één beslissing tegelijk.
Startvenster
*Nieuwe startvensterervaring*

Shell en platform

  • Bekijk snel welke versie van Visual Studio u opent en gebruikt via het nieuwe, verbeterde productpictogram. Het nieuwe pictogram is ook beter zichtbaar tegen verschillende achtergronden.
  • Ervaar een gemoderniseerd uiterlijk van Visual Studio met ons vernieuwde blauwe thema dat u een schonere gebruikersinterface biedt terwijl u nog steeds voldoet aan onze toegankelijkheidsstandaarden.
  • Bekijk meer van uw code door onze wijzigingen die gericht zijn op compactheid en verticale ruimte vrijmaken in de IDE. We hebben de titelbalk en de menubalk gecombineerd met behoud van de bestaande functionaliteit.
  • Gebruik Visual Studio als een Per-Monitor Awareness-toepassing via een nieuwe, experimentele instelling. Wanneer deze instelling is ingeschakeld, kunnen delen van Visual Studio, zoals de shell en de editor, scherper worden weergegeven, ongeacht uw weergaveconfiguratie en/of schaalaanpassing.
  • Ervaar een verbeterde zoekervaring voor menu's, opdrachten, opties en installeerbare onderdelen. Onze nieuwe zoekfunctie geeft nu dynamisch resultaten weer, herkent spelfouten en biedt relevante informatie (zoals sneltoetsen) binnen de zoekresultaten.
Visual Studio Search met resultaten
*Verbeterde Zoekfunctie in Visual Studio*
  • Bekijk statusinformatie die is gekoppeld aan uw momenteel geopende bestand via de functie Documentstatusindicator.
Documentstatusindicator met problemen
*Documentgezondheidsindicator - probleem in document*
Documentgezondheidsindicator zonder enige problemen
Indicator voor documentgezondheid - geen problemen
  • Als u een C#-ontwikkelaar bent, kunt u snel enkele van de meest voorkomende coderingssuggesties opschonen met codeopruiming.
  • Selecteer het pakket aan correctietools dat u wilt laten uitvoeren door Code Cleanup te configureren.
Configuratiedialoogvenster voor het opschonen van code
*Code opruimen configureren*
  • Bekijk de inhoud van uw klembordgeschiedenis via een contextmenu die de klembordring uitbreidt (Ctrl + Shift + V).
Contextmenu Klembord-ring
Contextmenu voor Klembordring
  • We hebben uw zoekervaring verbeterd door:
    • Filters toevoegen voor menu's, onderdelen en sjablonen
    • Uw zoekselecties opnemen om u de meest relevante zoekresultaten te geven
    • U kunt nieuwe projecten/items rechtstreeks vanuit Visual Studio Search maken en toevoegen aan uw oplossing
  • De verbeterde ervaring Per-Monitor Awareness (PMA) is nu standaard ingeschakeld voor gebruikers die voldoen aan de minimale set vereisten (.NET 4.8 Preview en Windows 10 april 2018 Update of hoger). Gereedschapsvensters zoals Toolbox, Breakpoints, Watch, Locals, Autos & Call Stack zijn geconverteerd naar PMA en worden daarom scherp weergegeven, ongeacht uw weergaveconfiguratie en/of schaalaanpassing.
  • Er wordt een nieuwe meldingservaring toegevoegd:
    • Een nieuw pictogram en tellerervaring voor de statusbalk
    • Een nieuw toastmeldingsmechanisme
    • Vervaldatummeldingen voor Visual Studio-updates en Visual Studio-licenties
  • Een herziene Blauwe thema-ervaring die feedback aanpakt door de helderheid te verminderen, het contrast te verbeteren en andere bruikbaarheidsproblemen op te lossen.
  • Verbeterde mogelijkheden voor het slepen van vensters door beschikbare vrije ruimte in het werkbalkgebied te gebruiken als een sleepbaar gebied.
  • U kunt nu een verzameling oplossingen voor codeopruiming opslaan als een profiel, zodat u snel de reeks oplossingen kunt selecteren die u wilt uitvoeren tijdens codeopruiming.
Visual Studio Code-opschoningsprofielen
Visual Studio Code Opschoning-Profielen
  • We hebben tags toegevoegd in het dialoogvenster Extensies en updates om u te helpen snel te begrijpen of een extensie in preview is, een betaalde extensie is of zich in een proefperiode bevindt.
Dialoogvensters voor extensies en updates met tags
*Dialoogvensters voor extensies en updates met tags*
  • De aanbevolen manier om tooltips voor gegevens te implementeren in Visual Studio 2019 en later is nu IAsyncQuickInfoSourceProvider. Verouderde editor Snelinfo-API's IVsTextTipData en TextTipData zijn verouderd verklaard in Visual Studio 2019 Preview 1.
  • De Smart Tags van editor (ISmartTag*-familie van interfaces in Microsoft.VisualStudio.Language.Intellisense-naamruimte) zijn afgeschaft ten gunste van de LightBulb-API en worden niet meer ondersteund vanaf Visual Studio 2019 Preview 1.
  • De oplossingsopties Geavanceerde buildconfiguraties weergeven, Oplossing altijd weergeven en Nieuwe projecten opslaan wanneer deze zijn gemaakt , zijn verwijderd vanwege weinig gebruik. Deze waarden zijn ingesteld op de standaardwaarde Waar.
  • Meld u aan of uit voor bepaalde preview-functies met behulp van de nieuwe pagina Preview-functies, te vinden in Extra > Opties > Omgeving > Preview-functies.

Performance

  • We hebben een nieuwe snelkoppeling toegevoegd voor Build Selection voor mappen en oplossingen: Ctrl + B.
  • Open snel grote oplossingen door uw oplossing te laden met alle projecten die zijn uitgepakt. Projecten niet laden
  • Kies welke projecten u wilt laden voor de oplossing die wordt geopend met Oplossingsfilterbestanden.
    • Maak een oplossingsfilterbestand door projecten te lossen die u niet automatisch wilt openen, met de rechtermuisknop op de oplossing te klikken en Opslaan als oplossingsfilter te selecteren. Vervolgens kunt u het filterbestand gebruiken om de oplossing te openen voor volgend gebruik. Oplossingsfilters
  • We hebben een opdracht toegevoegd om alles te bouwen voor CMake-bestanden: Ctrl + Shift + B.
  • De prestaties van IntelliSense in C++-bestanden in CMake-projecten zijn verbeterd.
  • We hebben een opdracht toegevoegd om niet-geladen projectafhankelijkheden te laden in de contextmenu's van het project en de oplossing.
  • Meldingstips voor het verbeteren van de prestaties van Visual Studio worden nu bewaard in het prestatiecentrum, toegankelijk via Help Visual > Studio-prestaties beheren.
  • U kunt nu de voortgang van het laden van uw oplossing zien in het taakstatuscentrum, evenals waarschuwingen wanneer het laden van uw oplossing is voltooid.
  • Kies welke projecten u wilt laden voor de oplossing die wordt geopend met Oplossingsfilterbestanden.
    • Maak een oplossingsfilterbestand door projecten te lossen die u niet automatisch wilt openen, met de rechtermuisknop op de oplossing te klikken en Opslaan als oplossingsfilter te selecteren. Vervolgens kunt u het filterbestand gebruiken om de oplossing te openen voor volgend gebruik.
  • Ervaar verbeterde detectie van build-assets en bestandszoekopdrachten wanneer u Ctrl+T gebruikt in Open Map-scenario's.
  • Nu zult u prestatieverbeteringen merken, omdat de Visual Studio-editor de impact van hulponderdelen op de typ-prestaties beperkt. Met name bij het typen worden alle langlopende, niet-essentiële bewerkingen automatisch geannuleerd.
  • U kunt het beperkingsgedrag van Visual Studio-hulponderdelen configureren via Extra's > Opties > Teksteditor > Geavanceerd:
Opties voor latentie typen in Visual Studio
*Opties voor latentie typen in Visual Studio*
  • U kunt nu het herstel van de status van de projecthiërarchie uitschakelen uit de vorige sessie in het venster van het hulpprogramma Solution Explorer. Deze wijziging is geïmplementeerd omdat het herstellen van de projecthiërarchie van de vorige sessie bij het openen van de oplossing de belasting van de oplossing kan vertragen.
    • Schakel deze optie in Extra > Opties > Projecten en Oplossingen > Algemeen in.
Instellingen voor het herstellen van opgeladen oplossingen
*Instellingen voor het terugzetten van oplossingsbelastingen*
* U kunt nu het herstellen van de status van het taakvenster uit de vorige sessie uitschakelen en in plaats daarvan altijd Solution Explorer en Team Explorer laden bij het opstarten. Deze wijziging is geïmplementeerd omdat het herstellen van hulpprogrammavensters uit eerdere sessies de belasting van de oplossing bij het opstarten kan vertragen. * Schakel deze optie in **Extra > Opties > Omgeving > Opstarten**.

Algemene foutopsporing en diagnostische gegevens

Algemene foutopsporing
  • Markeer, zoek en navigeer met trefwoorden met behulp van onze nieuwe zoekfunctie die we hebben geïntegreerd in de vensters Watch, Autos en Locals.
Trefwoorden zoeken in Watch
Zoeken in het Controlevenster
  • Bekijk een vervolgkeuzelijst met aanduidingen en opties voor het opmaken van gegevens in de vensters Watch, Autos en Locals door een komma toe te voegen aan een vermeld item.
Vervolgkeuzelijst voor Formatspecificator in Bekijken
Formaatspecificator vervolgkeuzelijst in het venster Bekijken
  • U kunt nu aangepaste en DataSet visualizer-ondersteuning voor .NET Core gebruiken.
DataSet Visualizer voor .NET Core
DataSet Visualizer voor .NET Core-toepassingen
  • Voor C++-toepassingen die worden uitgevoerd in Windows, laadt PDB nu in een afzonderlijk 64-bits proces. Deze wijziging heeft betrekking op een reeks crashes die worden veroorzaakt door het foutopsporingsprogramma dat onvoldoende geheugen heeft bij het opsporen van fouten in toepassingen die een groot aantal modules en PDBs bevatten.
Onderbrekingspunten voor beheerde gegevens

U kunt nu breken wanneer de eigenschapswaarde van een specifiek object verandert in .NET Core-toepassingen (3.0 of hoger) met behulp van gegevensonderbrekingspunten, een functie die oorspronkelijk exclusief was voor C++. Ze zijn een uitstekend alternatief voor het plaatsen van een onderbrekingspunt op de setter van een eigenschap, omdat een gegevensonderbrekingspunt zich kan richten op de eigenschap van een specifiek object, zelfs als deze buiten het bereik valt, terwijl de voormalige optie kan resulteren in constante, irrelevante onderbrekingen als u honderden objecten hebt die functie aanroepen.

Onderbrekingspunten voor gegevens voor .NET Core
Onderbrekingspunten voor gegevens in .NET Core-toepassing
Kijk naar updates van de zoekgebruikerservaring

We hebben de gebruikersinterface bijgewerkt voor het zoeken in de vensters Auto's, Locals en Watch met een eenvoudigere interface. De functie Search Deeper is gewijzigd in een vervolgkeuzelijst, zodat u snel kunt selecteren hoe diep uw eerste en volgende zoekopdrachten moeten zijn.

Voorkeuren voor codestijl toepassen
  • U kunt nu codestijlvoorkeuren toepassen vanaf de commandoregel met de dotnet format global tool. Als u wilt installeren, hebt u .NET Core 2.1 SDK of hoger nodig. Voer de volgende opdracht uit in uw favoriete terminal: dotnet tool install -g dotnet-format --version 3.0.0-beta4-19105-10
dotnet format video
Voer dotnet-indeling uit vanaf de opdrachtregel.

Extensibility

  • U kunt geen extensies meer installeren die zijn gebouwd met de V1 vsixmanifest-extensie-indeling in Visual Studio 2019. V1 is geïntroduceerd in Visual Studio 2010 en is afgeschaft in Visual Studio 2017 omdat dit problemen met de betrouwbaarheid van Visual Studio kan veroorzaken. In Visual Studio 2019 is de ondersteuning voor V1 volledig verwijderd. Extensies gericht op Visual Studio 2019 moeten opnieuw worden opgebouwd, in V2 of V3 van de vsixmanifest-indeling.
  • U krijgt nu een melding wanneer een extensie synchroon automatisch wordt geladen. Houd er rekening mee dat de extensie in deze release wordt geladen en werkt als normaal, maar het risico loopt dat de extensie niet werkt in de volgende Visual Studio 2019-update. Meer informatie vindt u in onze blogpost over het verbeteren van de reactiesnelheid van kritieke scenario's door het gedrag van automatische belasting voor extensies bij te werken.
Unified SDK NuGet-pakket

In het verleden moesten auteurs van extensies veel afzonderlijke verwijzingen maken naar de afzonderlijke NuGet-pakketten van de Visual Studio SDK die ze nodig hadden om te gebruiken in hun extensie. De versies van de verschillende pakketten werden niet altijd uitgelijnd en dat leidde vaak tot afhankelijkheidsconflicten tijdens het compileren en runtimeproblemen.

Als u deze problemen wilt oplossen, gebruikt u een nieuw pakket met de naam Microsoft.VisualStudio.SDK dat afhankelijkheden bevat van alle pakketten waaruit de Visual Studio SDK bestaat. Het lost het probleem van niet-overeenkomende versies op en maakt het eenvoudig om te weten welke versie moet worden gebruikt. Gebruik gewoon de versie van het pakket dat overeenkomt met de laagste versie van Visual Studio die door uw extensie wordt ondersteund en u hebt toegang tot de volledige SDK.

Op dit moment bestaat alleen versie 15.9 van het SDK-pakket, maar er worden meer uitgebracht in de maanden om helemaal naar versie 14.0 te komen.

Nieuwe en bijgewerkte projectsjablonen

De VSIX Project-sjabloon heeft meerdere updates doorlopen om deze te vereenvoudigen en beter te maken:

  • Maakt gebruik van het nieuwe, geïntegreerde SDK NuGet-pakket
  • Bevat een AsyncPackage-klasse
  • Er is geen RESX-bestand meer nodig om een pakket te compileren
  • Doelen voor .NET Framework 4.7.2

Er is een nieuwe lege VSIX-projectsjabloon gemaakt en deze is hetzelfde als de VSIX Project-sjabloon, maar zonder de klasse AsyncPackage. Het verwijst ook naar het geïntegreerde SDK NuGet-pakket dat een goed startpunt biedt voor MEF-extensies en andere uitbreidingstypen zonder pakketten.

Gratis/betaalde/proefversie

Er is geen eenvoudige manier geweest om te zien of een extensie is gemarkeerd als gratis, betaald of een proefversie. Dit verandert nu zodat in het dialoogvenster Extensies en updates elke extensie die een proefversie of betaald is, duidelijk als zodanig wordt gemarkeerd. Extensies die geen proef-/betaald label hebben, zijn gratis.

Testhulpmiddelen

Aanvullende API's in het testvenster die eerder niet-gedocumenteerd waren, maar die als openbaar zijn gemarkeerd, zijn toegevoegd aan de afschaffingslijst.

Broncodebeheer

  • Sla wijzigingen tijdelijk op, zodat u aan een andere taak kunt werken nu de Git-hulpprogramma's van Team Explorer Git stash ondersteunen.
  • Beoordeel, voer pull requests uit en debug ze zelfs vanuit Azure Repos zonder de IDE te verlaten, met behulp van de gloednieuwe pull request-ervaring in Visual Studio 2019. Om aan de slag te gaan, kunt u de Pull-aanvragen voor Visual Studio-extensie downloaden vanuit de Visual Studio Marketplace.
Nieuwe ervaring voor pull-aanvragen
Nieuwe ervaring voor pull-aanvragen

MSBuild

  • De MSBuild-toolsetversie is veranderd van 15.0 naar Current. MSBuild.exe is nu in %VSINSTALLDIR%\MSBuild\Current\Bin\MSBuild.exe.
  • MSBuild (en Visual Studio) ondersteunt nu .NET Framework 4.7.2. Als u nieuwe MSBuild API-functies wilt gebruiken, moet uw assembly ook upgraden, maar de bestaande code blijft werken.

C#

Voor elke release vóór Visual Studio 2019 was de standaardversie van de C#-taal altijd gelijk aan de nieuwste primaire versie. In Visual Studio 2017 heeft C# drie secundaire versies ontwikkeld en uitgebracht: 7.1, 7.2 en 7.3. Nieuwe projecten waren echter nog steeds standaard ingesteld op C# 7.0. Dit bleek frustrerend voor C#-ontwikkelaars die nieuwe functies wilden gebruiken, maar moest de taalversie voor elk nieuw project handmatig wijzigen.

Om dit probleem op te lossen, wordt de standaardversie van de C#-taal bepaald door het doelframework:

  • Als u zich richt op .NET Core 3.0 preview, is de C#-taalversie C# 8.0 Preview.
  • Als u zich richt op .NET Framework of een niet-previewversie van .NET Core, zal de C#-taalversie C# 7.3 zijn.

Dit maakt het gebruik van de nieuwste stabiele C#-taalfuncties standaard mogelijk en wanneer u .NET Core-previews gebruikt, is het gebruik van C# 8.0 preview-taalfuncties die zijn afgestemd op .NET Core 3.0 Preview.

Als u een taalversie opgeeft via LangVersion een project- of props-bestand, overschrijft die taalversie de eerder beschreven standaardinstelling.

C++

  • Werk in realtime samen, nu Visual Studio Live Share C++ondersteunt.
  • Bespaar tijd met behulp van IntelliCode, een optionele extensie die gebruik maakt van de uitgebreide training en uw codecontext om te plaatsen wat u waarschijnlijk het meest zult gebruiken bovenaan uw voltooiingslijst. Voor C++biedt IntelliCode de meeste hulp wanneer u populaire bibliotheken zoals STL gebruikt.
  • We hebben verschillende projectsjabloonnamen en beschrijvingen aangepast aan het bijgewerkte dialoogvenster Nieuw project.
  • We hebben het experimentele onderdeel Clang/C2 verwijderd. Gebruik de MSVC-toolset voor volledige C++-standaarden die voldoen aan /permissive- en/std:c++17 of de Clang/LLVM-hulpprogrammaketen voor Windows. Zie de Visual C++-teamblog voor meer informatie.
  • We hebben de C++ Compiler /Gm-switch afgeschaft. Overweeg om de /Gm-switch in uw buildscripts uit te schakelen als deze expliciet is gedefinieerd. U kunt de afschaffingswaarschuwing voor /Gm veilig negeren, omdat het niet als fout wordt beschouwd bij gebruik van 'Waarschuwingen als fouten beschouwen' (/WX).
  • De C++ Android-ervaring is nu standaard ingesteld op Android SDK 25 en Android NDK 16b.
Productiviteit
  • Codeanalyse wordt nu automatisch op de achtergrond uitgevoerd. Waarschuwingen worden weergegeven als groene golvende in-editor terwijl u typt.
  • De sjabloonbalk maakt nu gebruik van de Peek Window-gebruikersinterface in plaats van een modaal venster, ondersteunt geneste sjablonen en vult standaardargumenten vooraf in in het Peek Window.
  • Er is een automatische fix-it beschikbaar voor de NULL->nullptr codeanalysewaarschuwing (C26477 USE_NULLPTR_NOT_CONSTANT) via het lichtbolmenu op relevante regels, standaard ingeschakeld in de C++ Core Check Type Rules-regelset. Aanvullende snelle oplossingen in de IDE omvatten het toevoegen van ontbrekende #include-instructies, het corrigeren van ontbrekende puntkomma's en het corrigeren van onjuiste toepassingen van '*' versus '&'.
  • Vooraf gecompileerde headers worden niet meer standaard gegenereerd voor C++-console- en desktop-apps.
  • Ga nu naar Definitie voor #include instructies en open het bijbehorende bestand. Dit bevat de F12-snelkoppeling, die een eenvoudige manier biedt om door uw code te navigeren.
  • Het zweven over een sluitende accolade van een codeblok biedt nuttige informatie over de context van dat blok.
  • We hebben ondersteuning toegevoegd in ConcurrencyChecker voor bekende STL-typen uit de <mutex-header> .
  • Er is een bijgewerkte gedeeltelijke implementatie van de levensduurprofielcontrole beschikbaar voor het detecteren van zwevende aanwijzers en verwijzingen.
  • We hebben initiële ondersteuning toegevoegd in de compiler voor de C++20-operator <=> ('spaceship') voor vergelijking in drie richtingen.
CMake
  • De prestaties van IntelliSense voor C++-bestanden in CMake-projecten zijn verbeterd.
  • Visual Studio helpt bij het opstarten van uw C++-ontwikkeling met CMake in Linux door te detecteren of u een compatibele versie van CMake op uw Linux-computer hebt. Als dat niet zo is, kunt u deze installeren.
  • De CMake Settings Editor biedt een alternatief voor CMakeSettings.json en biedt pariteit met CMakeGUI.
  • Het CMake-menu is verwijderd en gereorganiseerd voor een betere pariteit met projecten en oplossingen.
  • Incompatibele instellingen in CMakeSettings, zoals niet-overeenkomende architecturen of incompatibele CMake-generatorinstellingen, worden als golvende lijnen weergegeven in de JSON-editor en fouten in de Error List.
  • De vcpkg-hulpprogrammaketen wordt automatisch gedetecteerd en ingeschakeld voor CMake-projecten die eenmaal vcpkg integrate install zijn geopend in de IDE. Dit gedrag kan worden uitgeschakeld door een leeg toolchainbestand op te geven in CMakeSettings.
  • CMake-projecten schakelen nu standaard Just My Code-foutopsporing in.
  • Statische analysewaarschuwingen kunnen nu op de achtergrond worden verwerkt en worden weergegeven in de editor voor CMake-projecten.
  • We hebben duidelijkere begin- en eindberichten voor build en configure toegevoegd voor CMake-projecten, en ondersteuning voor de gebruikersinterface van de buildvoortgang van Visual Studio. Daarnaast is er nu een CMake-gedetailleerdheidsinstelling in Extra > Opties om het detailniveau van CMake-build- en configuratieberichten in het Outputvenster aan te passen.
  • De instelling cmakeToolchain wordt nu ondersteund in CMakeSettings om hulpprogrammaketens op te geven zonder de CMake-opdrachtregel handmatig te wijzigen.
Back-end
  • We hebben verbeteringen in de buildprestaties geïmplementeerd, inclusief de verwerking door de linker van bestands-I/O en de koppelingstijd bij het samenvoegen en aanmaken van PDB types.
  • We hebben basisondersteuning toegevoegd voor OpenMP SIMD-vectorisatie. Dit kan worden ingeschakeld met de nieuwe CL-switch -openmp:experimenteel. Hierdoor kunnen lussen met ‘#pragma omp simd’ mogelijk worden gevectoriseerd. De vectorisatie is niet gegarandeerd en lussen die wel zijn geannoteerd maar niet gevectoriseerd, krijgen een waarschuwing. Als er geen SIMD-clausules worden ondersteund, worden ze gewoon genegeerd en zal er een waarschuwing worden gegeven.
  • We hebben een nieuwe inlining opdrachtregelschakelaar -Ob3 toegevoegd, een agressievere versie van -Ob2. -O2 (het binaire bestand optimaliseren voor snelheid) impliceert nog steeds standaard -Ob2; als u merkt dat de compiler onder-inlining uitvoert, kunt u overwegen om -O2 -Ob3 te gebruiken.
  • Om de handmatige vectorisatie van lussen te ondersteunen, inclusief aanroepen naar wiskundige bibliotheekfuncties en bepaalde andere bewerkingen zoals gehele delingen, hebben we ondersteuning toegevoegd voor de intrinsieke functies van de Short Vector Math Library (SVML) waarmee de 128-bits, 256-bits of 512-bits vectorequivalenten worden berekend. Zie de Intel Intrinsieke Handleiding voor definities van de ondersteunde functies.
  • Nieuwe en verbeterde optimalisaties:
    • Constant vouwen en rekenkundige vereenvoudigingen voor expressies met behulp van SIMD(vector) intrinsieken, voor zowel float- als gehele getallen
    • Een krachtigere analyse voor het extraheren van informatie uit de controleflow (if/else/switch-constructies) om vertakkingen die altijd als waar of onwaar bewezen zijn te verwijderen.
    • Verbeterde uitschrijving van memset voor het gebruik van SSE2-vectorinstructies
    • Verbeterde verwijdering van nutteloze struct-/klassekopieën, met name voor C++-programma's die door de waarde worden doorgegeven
    • Verbeterde optimalisatie van code met behulp van de techniek memmove, zoals bij std::copy, std::vector en de constructie van std::string.
Verouderingen
  • De beheerde C++ testprojectsjabloon is niet meer beschikbaar. U kunt het beheerde C++-testframework in uw bestaande projecten blijven gebruiken, maar voor nieuwe eenheidstests kunt u overwegen een van de systeemeigen testframeworks te gebruiken waarvoor Visual Studio sjablonen (MSTest, Google Test) of de sjabloon Managed C# Test Project biedt.
  • De Windows 8.1 SDK is niet meer beschikbaar in het Installatieprogramma van Visual Studio. Werk uw C++-projecten bij naar de nieuwste Windows 10 SDK. Als u een harde afhankelijkheid hebt op 8.1, kunt u deze downloaden uit het Windows SDK-archief.
  • Windows XP-targeting is niet meer beschikbaar voor de nieuwste C++-toolset. XP-targeting met de MSVC-compiler en -bibliotheken op VS 2017-niveau wordt nog steeds ondersteund en kan worden geïnstalleerd via "Individuele onderdelen".
  • In onze documentatie wordt het gebruik van samenvoegmodules voor de implementatie van Visual C++ Runtime actief afgeraden. We nemen de extra stap om in deze release onze MSM's als verouderd te markeren. Overweeg om uw centrale VCRuntime-implementatie van MSM's te migreren naar het herdistribueerbare pakket.
  • De volgende wizards voor C++ ATL/MFC zijn niet meer beschikbaar: ATL COM+ 1.0-componentwizard, ATL Active Server Pages-componentwizard, ATL OLE DB-providerwizard, ATL-eigenschappenpaginawizard, ATL OLE DB-gebruikerwizard, MFC ODBC-gebruiker, MFC-klasse van ActiveX-besturingselement en MFC-klasse van Type Lib. Voorbeeldcode voor deze technologieën wordt gearchiveerd in de GITHub-opslagplaats vcSamples.

F#

F#-verbeteringen in Visual Studio 2019 bevinden zich op drie belangrijke gebieden:

  • F# 4.6
  • Belangrijke prestatieverbeteringen voor middelgrote en grotere oplossingen
  • Veel opensource-werk door onze uitstekende opensource-community
F# 4.6

Deze release bevat de F# 4.6-taal:

F#-compiler en FSharp.Core-verbeteringen

De F# en compiler en FSharp.Core hebben talloze verbeteringen gezien, met name van opensource-inzenders:

  • fsi.exe en fsc.exe is nu standaard ingesteld op .NET Framework 4.7.2, waardoor onderdelen die zijn gericht op dit framework of lager (#4946) kunnen worden geladen.
  • We hebben de methoden voor structs en structrecords geoptimaliseerd om even goed te presteren als methoden voor klassen en klassenrecords (#3057).
  • We hebben de verzonden IL geoptimaliseerd voor gecombineerde Booleaanse logica in F#-code (#635).
  • We hebben het gebruik van + met tekenreeksen in F# geoptimaliseerd om zo min mogelijk String.Concat aanroepen te doen (#5560).
  • Er is een probleem opgelost in het FSharp.Core-pakket waarbij enkele extra mappen met testassets werden opgenomen. FSharp.Core 4.5.5 en 4.6.1 moeten de oplossing hebben (#5814).
  • Wanneer een door de gebruiker gedefinieerd kenmerk niet overneemt van de Attribute klasse, ontvangt u nu een waarschuwing van Vasily Kirichenko.
  • De AssemblyInformationVersionAttribute waarde in een projectbestand ondersteunt nu willekeurige waarden ter ondersteuning van scenario's zoals SourceLink (#4822).
  • Een fout waarbij ongeldige syntaxis met Actieve patronen een interne compilerfout veroorzaakt, is opgelost door Steffen Forkmann (#5745).
  • Een fout waarbij het Module achtervoegsel ten onrechte aan een module in een recursieve module is toegevoegd om overeen te komen met een type waarbij het enige verschil een algemene parameter is die door BooksBaum (#5794) is opgelost.
  • Een verbetering van het foutbericht wanneer typeparameters niet direct naast een typenaam staan, is door Alan Ball (#4183) uitgevoerd.
  • Het uint16 letterlijke achtervoegsel wordt correct weergegeven in de foutberichten voor ongeldige numerieke letterlijke waarden, door Teo Tsirpanis (#5712).
  • Foutberichten voor computationele expressies geven niet langer async in het bericht aan en verwijzen in plaats daarvan naar 'computationele expressies', door John Wostenberg (#5343).
  • Er is een foutmelding voor het onjuist verwijzen naar .dlls in F# interactive opgelost door Bartoz Sypytkowski (#5416).
  • Een fout waarbij Statically Resolved Type Parameters het aanroepen van een lid dat een overgenomen lid verbergt niet kon verwerken, is opgelost door Victor Peter Rouven Müller (#5531).
  • Verschillende kleinere prestatieverbeteringen aan de compiler zijn toegevoegd door Steffen Forkmann en Robert Jeppesen.
Verbeterde F#-prestaties

Een ander belangrijk aandachtsgebied voor F# in Visual Studio 2019 is de prestaties voor middelgrote en grote oplossingen. We hebben een aantal zeer langdurige problemen opgelost, waarvan sommige teruggaan naar de allereerste editie van F#-hulpprogramma's voor Visual Studio. We hebben ook wat hulp gekregen van de uitstekende opensource-community van F#.

  • We hebben vernieuwd hoe de F#-taalservice wordt geïnitialiseerd door Roslyn. Typekleuring voor grotere oplossingen moet over het algemeen sneller worden weergegeven.
  • We hebben onze weergave van brontekst gewijzigd om grote toewijzingen in de loop van de tijd te voorkomen, met name met grotere bestanden (#5935, #5936, #5937, #4881).
  • We hebben onze buildcaches gewijzigd voor kleine bewerkingen in bestanden om aanzienlijk minder geheugen te gebruiken (#6028).
  • We hebben een compilerfunctie gewijzigd die namen voorstelt wanneer niet-herkende tokens worden getypt om deze suggesties alleen op aanvraag te berekenen, wat resulteert in aanzienlijke CPU- en geheugenverminderingen bij het langzaam typen in grotere oplossingen (#6044).
  • We hebben IntelliSense zodanig gewijzigd dat er standaard geen symbolen meer worden weergegeven uit niet-geopende naamruimten. Dit verbetert met name de prestaties voor IntelliSense in projecten met veel verwijzingen. Deze functie kan weer worden ingeschakeld in de instellingen via Extra Opties >> teksteditor > F# > IntelliSense.
  • We hebben het geheugengebruik verbeterd bij het gebruik van typeproviders voor het genereren van zeer grote hoeveelheden opgegeven typen in een voltooiingslijst (#5599).
  • Een vermindering van het CPU- en geheugengebruik tot een intern tekenreeksvergelijkingsalgoritmen voor het voorstellen van niet-herkende namen is opgelost door Avi Avni (#6050).
  • Een belangrijke bron van grote stringtoewijzingen, vooral voor IDE-tools, is opgelost door Avi Avni (#5922).
  • Een belangrijke bron van Large Object Heap-toewijzingen afkomstig van het IntelliSense-algoritme is aangepakt door Chet Husk (#6084).
F#-hulpprogramma verbeteringen

Naast prestatieverbeteringen zijn er verschillende andere verbeteringen aangebracht in F#-hulpprogramma's voor Visual Studio 2019:

  • De oplossing voor de instructiecode toevoegen open is nu standaard ingesteld op het toevoegen van de open instructie boven aan het bestand.
  • Er is een fout opgelost waarbij match! in gebruikerscode structuurrichtlijnen ongeldig maakte en code-omtrek-knooppunten voor latere bereiken invalideerde (#5456).
  • De editor kleurt nu correct byrefen outrefref waarden als recordvelden met de onveranderbare waardekleuring (#5579).
  • Er is een fout opgelost waarbij de hernoem-refactoring het ' teken in symboolnamen (#5604) niet herkende.
  • We hebben een langdurige fout opgelost waarbij het wijzigen van de naam van F#-scriptbestanden resulteerde in een verlies van kleurgegevens (#1944).
  • We hebben IntelliSense opgeschoond, zodat er geen niet-gerelateerde items in de lijst worden weergegeven wanneer u op Backspace drukt.
  • Met Slimme inspringing ingeschakeld, formatteert het plakken van F#-code in de editor deze nu zodat het overeenkomt met een geschikte context, op basis van de huidige cursorpositie. Dit is geïmplementeerd door Saul Rennison (#4702).
  • Een probleem waarbij F#-editoropties niet werden gesynchroniseerd, is opgelost door Jakob Majocha (#5997, #5998).
  • Een fout waarbij IntelliSense in een constructor binnen een inherit clausule de primaire constructor niet zou weergeven, is opgelost door Eugene Auduchinok (#3699)
  • Er zijn verschillende kleinere verbeteringen aangebracht in de F#-taalservice door Auduchink
Opensource-infrastructuur van F#

We hebben de codebasis van de F#- en F#-hulpprogramma's volledig gemigreerd om de .NET SDK te gebruiken. Dit vereenvoudigt het bijdrageproces voor ontwikkelaars aanzienlijk, vooral als ze Windows niet gebruiken. Daarnaast heeft Jakob Majocha geholpen bij het opschonen van documenten voor nieuwe inzenders in het licht van de wijzigingen in de codebasis.

Python

Op basis van feedback van klanten bevat Visual Studio 2019 een gereviseerde ervaring voor het beheren van Python-omgevingen:

  • We hebben een nieuw dialoogvenster Omgeving toevoegen toegevoegd waarmee het maken en toevoegen van virtuele omgevingen en conda-omgevingen in uw project wordt vereenvoudigd.
  • Het Installatieprogramma van Visual Studio installeert niet langer volledige versies van Anaconda om de grootte van Visual Studio-installaties te verminderen en fouten tijdens upgrades te voorkomen.
  • Miniconda is gebundeld met Python-werkbelasting als een optioneel onderdeel, zodat u conda-omgevingen kunt maken zonder Miniconda/Anaconda te hoeven installeren.
  • U wordt nu automatisch gevraagd om een omgeving toe te voegen als er een requirements.txt (virtuele omgeving) of environment.yml (conda-omgeving) aanwezig is in de hoofdmap van uw project.
  • Er is een nieuwe werkbalk Python-omgevingen beschikbaar bij het bewerken van Python-bestanden. Met de nieuwe werkbalk kunt u schakelen tussen verschillende Python-interpreters wanneer u met projecten werkt, Mapwerkruimten openen of Python-bestanden loslaat in andere projecten.
  • Verbeteringen in de kwaliteit van automatische voltooiingen in Python IntelliSense, waaronder verbeterde detectie van relatieve en naamruimteimporten.
  • Django-projectsjablonen zijn bijgewerkt ter ondersteuning van Django 2.x.
  • Retourwaarden voor functies worden nu weergegeven in het Python-foutopsporingsprogramma.
  • U kunt nu VS Live Share-sessies maken en samenwerken aan Python-code met andere Visual Studio-gebruikers. Voorheen werd Python alleen ondersteund bij het deelnemen aan sessies die zijn gemaakt vanuit Visual Studio Code.

JavaScript/TypeScript

  • We hebben ondersteuning toegevoegd voor het inschakelen van JavaScript-foutopsporing binnen eenheidstests in Node.js projecten. Dit was een lang aangevraagde functie van onze Node.js klanten.
  • De JavaScript-/TypeScript-taalservice wordt nu automatisch geladen in projecten waarop het TypeScript NuGet-pakket of npm-pakket is geïnstalleerd (TypeScript 3.2 en hoger wordt ondersteund vanuit het NuGet-pakket en TypeScript 2.1 en hoger wordt ondersteund vanuit het npm-pakket).
  • We hebben prestatieverbeteringen in de taalservice geïmplementeerd als gevolg van het verhogen van de geheugenlimiet op de taalservice om grotere projecten af te handelen.
  • In de foutenlijst worden standaard geen diagnostische gegevens meer weergegeven van gesloten JavaScript-/TypeScript-bestanden.
  • De verouderde JavaScript-taalservice is niet meer beschikbaar. Voorheen hadden gebruikers de mogelijkheid om de verouderde JavaScript-taalservice te herstellen. Gebruikers beschikken nu over de nieuwe JavaScript-taalservice. De nieuwe taalservice is gebaseerd op de TypeScript-taalservice, die wordt mogelijk gemaakt door statische analyse. Dit maakt betere hulpprogramma's mogelijk, zodat uw JavaScript-code kan profiteren van uitgebreidere IntelliSense op basis van typedefinities. De nieuwe service is lichtgewicht en verbruikt minder geheugen dan de verouderde service, waardoor gebruikers betere prestaties krijgen wanneer hun code wordt geschaald.

Team Explorer en Azure DevOps

We hebben verbeteringen aangebracht in de ervaring met Git-werkitems met Azure DevOps.

  • Wijs werkitems toe aan uzelf of anderen met de nieuwe identiteitspicker. Standaard wordt er een lijst weergegeven met de personen die u het laatst hebt gebruikt. Of gebruik de zoekfunctie om anderen in uw organisatie te vinden.
  • We hebben de #mentions-ervaring in het commitbericht verbeterd. Wanneer u een werkitem selecteert in de #mention kiezer, wordt dit automatisch toegevoegd aan de lijst Gerelateerde werkitems.
Verbeteringen in het toewijzen van werkitems en #mention
Werkitems toewijzen en verbeteringen aan #mention

Hete pad markeren

  • We hebben ondersteuning toegevoegd voor het markeren van dynamische paden in de hulpprogramma's CPU-gebruik en DotNet-objecttoewijzing in de Performance Profiler. Selecteer een functie in de aanroepstructuur en druk op de knop Dynamisch pad om het dynamische pad voor CPU-gebruik of Dot Net Object Allocation uit te vouwen. Met deze functie kunt u eenvoudig de functieaanroepen identificeren die het hoogste percentage van de CPU gebruiken of die de meeste objecten toewijzen.
Hete pad markeren in het hulpprogramma CPU-gebruik
Hete pad markeren in het hulpprogramma CPU-gebruik

.NET- en ASP.NET-hulpprogramma's

  • We hebben verschillende kleine UX-verbeteringen geïmplementeerd op de overzichtspagina van het publicatieprofiel (nieuwe sectiekoppen en acties/snelkoppelingen) voor alle toepassingen.
  • Wanneer u ASP.NET toepassingen publiceert naar Azure App Service, heeft de overzichtspagina van het publicatieprofiel nu een nieuwe sectie met de naam 'Afhankelijkheden'. In deze nieuwe sectie kunt u momenteel Azure Storage- en Azure SQL-resources koppelen aan uw App Service-exemplaar. Verwacht dat er in de toekomst meer Azure-services worden weergegeven via dit mechanisme.
  • Gebruik codemetrics met .NET Core-projecten met onze extra compatibiliteitsopties.
  • Exporteer de instellingen van de editor naar een Editorconfig-bestand via Extra > Opties > Teksteditor > C# > Code Stijl met de knop "Generate .editorconfig file from settings".
  • Gebruik de nieuwe regex parser-ondersteuning van C# en Visual Basic. Reguliere expressies worden nu herkend en taalfuncties zijn ingeschakeld. Regex-tekenreeksen worden herkend wanneer een tekenreeks wordt doorgegeven aan de Regex-constructor of wanneer een tekenreeks direct wordt voorafgegaan door een opmerking die de tekenreeks language=regexbevat. De taalfuncties in deze release zijn classificatie, accoladekoppeling, markeringsverwijzingen en diagnostische gegevens.
Reguliere expressies hebben nu ondersteuning voor parser
Ondersteuning voor parser voor reguliere expressies
  • U kunt nu dode codeanalyse gebruiken voor ongebruikte privéleden met een optionele codeoplossing om ongebruikte liddeclaratie te verwijderen.
  • De functie Verwijzingen zoeken op een accessor retourneert nu alleen resultaten voor die accessor.
  • We hebben een codecorrectie toegevoegd voor het genereren van een deconstructie-methode.
  • "Using"-instructies kunnen worden toegevoegd wanneer code in een bestand wordt geplakt. Er wordt een codeoplossing weergegeven na het plakken van herkende code waarmee u wordt gevraagd relevante ontbrekende importbewerkingen toe te voegen.
  • Er zijn nu meer herstructurerings- en snelle acties beschikbaar met behulp van 'Ctrl +' of 'Alt + Enter':
    • Voor gevallen waarin 'await' wordt geïmpliceerd maar weggelaten, is er nu een compilerwaarschuwing.
    • Voor het converteren van een lokale functie naar een methode.
    • Voor het converteren van een tuple naar een benoemde struct.
    • Voor het converteren van een anoniem type naar een klasse.
    • Voor het converteren van een anoniem type naar een tuple.
    • Voor het omzetten van een foreach-lus naar een LINQ-query of LINQ-methode.
  • U hebt nu ondersteuning toegevoegd voor ASP .NET Core-toepassingen die worden uitgevoerd in een Azure Kubernetes Service. Zie dit docker-voorbeeld op GitHub om aan de slag te gaan.
  • ASP.NET wordt nu ondersteund in het hulpprogramma CPU-gebruik van de Performance Profiler.
Hulpprogramma voor CPU-gebruik in prestatieprofiel
Hulpprogramma voor CPU-gebruik in prestatieprofiel
  • U kunt nu Find All References (Shift-F12) en CodeLens gebruiken om resultaten van Razor-bestanden (.cshtml) weer te geven in .NET Core-projecten. U kunt vervolgens naar de geïdentificeerde code navigeren in de relevante Razor-bestanden.
  • We hebben ondersteuning toegevoegd voor ASP .NET-toepassingen (core en desktop) die worden uitgevoerd op Virtuele Windows-machines (VM) en VM-schaalsets.
Doelselectieinterface voor momentopnamen van foutopsporingsprogramma
Doelselectiegebruikersinterface voor momentopnamen van foutopsporingsprogramma
  • U ontvangt nu een waarschuwing bij het uitvoeren van codeanalyse met fxcop. .NET Compiler Analyzers zijn de aanbevolen manier om in de toekomst codeanalyses uit te voeren. Lees meer over het migreren naar .NET-compilerplatformanalyses.
  • PcL-projectsjablonen (Portable Class Library) zijn niet meer beschikbaar en projectondersteuning wordt niet standaard geïnstalleerd. Voor nieuwe projecten die zijn bedoeld om meerdere platforms te targeten, moet het .NET Standard-projecttype worden gebruikt. Klanten die ondersteuning voor PCL-projecten nodig hebben, moeten het onderdeel afzonderlijk installeren van het tabblad Afzonderlijke onderdelen in het installatieprogramma van Visual Studio.
  • De opdracht Project.CopyWebSite is niet meer beschikbaar. Deze functie was alleen beschikbaar op het projecttype Website voor .NET. Het biedt de mogelijkheid om twee websites te synchroniseren, zodat ze dezelfde versie van elk bestand hebben. In Visual Studio 2019 kunt u de bestanden van de externe bestemming buiten Visual Studio kopiëren en vervolgens het project openen.
  • De mogelijkheid om een websiteproject te openen vanaf een externe FTP-locatie is verwijderd. FTP-gebruikers kunnen de bestanden van de externe bestemming buiten Visual Studio kopiëren, het project openen en wijzigingen aanbrengen en vervolgens publiceren gebruiken om ze terug te pushen naar de externe FTP-locatie.
  • De ASP.NET- en webworkload installeert geen aangepaste CoffeeScript-bewerkingservaring meer. De TextMate-bundels van Visual Studio bieden een superieure ervaring voor het werken met CoffeeScript.
  • CSS- en CoffeeScript-fouten die momenteel worden gegenereerd door ingebouwde kopieën van CSSLint en CoffeeLint, worden niet meer automatisch weergegeven bij het bewerken van deze bestanden. Gebruik een alternatieve methode voor het uitvoeren van linters, zoals npm of Visual Studio Task Runner Explorer.
  • Visual Studio biedt geen IntelliSense meer voor Knockout HTML-kenmerken. In Visual Studio 2019 moet u de kenmerken typen.
  • De mogelijkheid om het verouderde Chrome-foutopsporingsprogramma te gebruiken in ASP.NET projecten voor foutopsporing in JavaScript is verwijderd. U kunt het huidige Chrome-foutopsporingsprogramma blijven gebruiken dat is ingebouwd in Visual Studio.
  • De mogelijkheid om javaScript Console-functionaliteit te gebruiken in ASP.NET projecten is verwijderd. We raden klanten aan om Console te gebruiken die is opgenomen in hun favoriete browserdevtools.

Containerhulpprogramma's

  • We hebben een gestroomlijnde ervaring met één project toegevoegd voor container- en foutopsporing:
    • ASP.NET Web Applications (.NET Framework)
    • Consoletoepassingen (.NET Core)
  • We hebben ondersteuning toegevoegd voor het debuggen van ASP.NET Core applicaties die Alpine als basisimage gebruiken.
  • We hebben ondersteuning toegevoegd voor de nieuwste ASP.NET- en .NET Core-images.

.NET Core-hulpprogramma's

.NET Core 3.0

Met deze release kunt u ASP.NET Core-, Console- en Klassebibliotheekprojecten maken die gericht zijn op .NET Core 3.0 als u de preview-SDK hebt geïnstalleerd.

Als u Visual Studio RC gebruikt, moet u ook naar Tools > Options > Projects and Solutions > .NET Core gaan en het selectievakje Previews van de .NET Core SDK's gebruiken inschakelen. Als u Visual Studio Preview gebruikt, hoeft u dit niet te doen. Meer informatie over deze instelling en het gedrag ervan vindt u in de update van .NET Core-hulpprogramma's voor Visual Studio 2017 versie 15.9.

U kunt ook Windows Forms- of WPF-projecten voor .NET Core 3.0 maken met de opdracht dotnet new. Deze projecten kunnen vervolgens worden geopend in Visual Studio 2019.

Nieuwe functies

Vanaf deze release maken we projectbestanden voor .NET SDK-projecten een eersteklas bestandstype in Visual Studio. Het volgende wordt nu ondersteund:

  • Dubbelklik op een projectknooppunt om het projectbestand te openen
  • Klik op de projectnode om het projectbestand te openen in een voorbeeldtabblad
  • Zoek een projectbestand op naam met Go to All (ctrl + T)
  • MSBuild-elementen in een projectbestand zijn nu doorzoekbaar met Zoeken in Bestanden
  • Het openen vanuit de foutlijst als een ontwerpfout van een project wordt getriggerd

Daarnaast gebruiken .NET SDK-projecten nu de nieuwe geïntegreerde console-ervaring voor F5 en ctrl + F5 in console-apps. Hiermee wordt de ervaring bij het starten van consoletoepassingen vanuit Visual Studio eens:

  • Het F5consolevenster wordt niet automatisch gesloten wanneer de app is uitgevoerd. U hoeft geen Console.Read()-aanroepen meer toe te voegen aan uw console-apps.
  • Voor ctrl + F5 wordt het consolevenster opnieuw gebruikt bij de volgende uitvoeringen van uw app. U hoeft geen grote aantallen consolevensters meer te sluiten.

Het nieuwe consolevenster kan automatisch worden gesloten door op een toets te drukken wanneer het is geopend of door de optie onder Extra > opties > te selecteren, sluit de console automatisch wanneer foutopsporing stopt.

Ondersteuning voor licentie-expressies en licentiebestanden is nu toegevoegd aan projecteigenschapspagina's. Dit komt overeen met wijzigingen die licenseUrl in NuGet verouderd maken.

Prestatieverbeteringen
  • De schaalbaarheid van grote oplossingen is aanzienlijk verbeterd, waardoor het gebruik van veel grotere .NET Core-oplossingen dan voorheen mogelijk is.
  • De laadtijden van oplossingen voor grote projecten zijn aanzienlijk verminderd, net zoals het CPU- en geheugengebruik bij het laden ervan.
Functiepariteit met non-.NET Core-projecten

U vindt een volledige lijst met problemen en pull-aanvragen in de mijlpalen 16.0, 16.0 Preview 2, 16.0 Preview 3 en 16.0 Preview 4 .

.NET-productiviteit

  • .NET-herstructureringen en codevoegsels:

    • Naamruimte en mapnaam synchroniseren
    • Leden omhoog trekken bij refactoring met dialoogopties
    Leden omhoog trekken met dialoogvensteropties
    Dialoogvenster Leden omhoog verplaatsen
    • Lijsten met parameters/argumenten omsluiten/inspringen/uitlijnen
    • Anoniem type converteren naar tuple
    • Expressie/bloktekst gebruiken voor lambda
    • Voorwaardelijke expressies en logische bewerkingen omkeren
    • Sluit blokcommentaar automatisch af met '/'
    • Converteren naar samengestelde toewijzing
    • Impliciet getypte variabelen kunnen niet constant zijn
    • Automatisch herstel om @$" te vervangen door $@" bij het typen van een geïnterpoleerde letterlijke tekenreeks.
    • Voltooiing voor #nullable enable|disable
    • Oplossing voor ongebruikte expressiewaarden en -parameters
    • Oplossing om ervoor te zorgen dat de Extract Interface in hetzelfde bestand blijft staan.
  • Categoriseer verwijzingen per lezen/schrijven.

  • De EditorConfig-optie "when_multiline" toevoegen voor csharp_prefer_braces.

  • Nieuwe classificatiekleuren zijn beschikbaar via de .NET Compiler Platform SDK (ook wel Roslyn genoemd). Nieuwe standaardkleuren, vergelijkbaar met de Visual Studio Code-kleuren, worden geleidelijk uitgerold. U kunt deze kleuren aanpassen in Opties >> voor omgevingslettertypen > en -kleuren of uitschakelen in de preview-functies van de omgeving > door het selectievakje Verbeterde kleuren gebruiken uit te schakelen. We horen graag feedback over hoe deze wijziging van invloed is op uw werkstroom.

Nieuwe Roslyn-classificatiekleuren
Nieuwe Roslyn-classificatiekleuren

JavaScript-foutopsporing in ASP.NET projecten

  • Als u een nieuwe Google Chrome-browser met aangepaste argumenten hebt toegevoegd met de optie Bladeren met... menu voor uw ASP.NET-project schakelt Visual Studio nu JavaScript-foutopsporing in voor uw toepassing wanneer foutopsporing wordt gestart. Uw aangepaste startargumenten voor Google Chrome worden toegepast bij het starten van Chrome.
Google Chrome met aangepaste argumenten toevoegen met 'Bladeren met'
Google Chrome met aangepaste argumenten toevoegen met 'Bladeren met...'
Opmerking: Visual Studio start Chrome standaard met een andere gegevensmap dan uw gewone Chrome-exemplaar, tenzij u het pad naar uw gegevensmap opgeeft als argument. Als u wilt dat er extensies beschikbaar zijn wanneer u dit Chrome-exemplaar gebruikt, moet u ze de eerste keer installeren.

hulpprogramma's voor ASP.NET & Azure Functions

  • Visual Studio 2019 wordt geleverd met een nieuwe ervaring voor het maken van nieuwe projecten. Bij het maken van nieuwe ASP.NET-projecten biedt Visual Studio extra dialoogvensters waarmee ASP.NET specifieke keuzes worden weergegeven. Deze extra dialoogvensters zijn bijgewerkt zodat deze overeenkomen met de visuele stijl van de rest van de ervaring.
  • Publicatiereferenties in Visual Studio worden voorlopig versleuteld en opgeslagen in het gebruikersbestand van het publicatieprofiel, zodat u ze niet telkens opnieuw hoeft in te voeren wanneer u uw toepassing publiceert. Gebruikersbestanden in het algemeen worden standaard uitgesloten van broncodebeheer omdat ze waarschijnlijk geheim en/of persoonlijke gegevens bevatten die niet mogen worden gedeeld. Tot nu toe, als een publicatieprofiel voor een Azure Functions-project is ingecheckt in broncodebeheer, maar het gebruikersbestand niet was, ontbreken de publicatiereferenties en kon het publicatieprofiel niet opnieuw worden gebruikt. Nu kunnen de referenties worden bewerkt en een nieuw gebruikersbestand worden gemaakt, zodat het publicatieprofiel opnieuw kan worden gebruikt.

Prestatiewizard

In Visual Studio 2019 zijn de profileringservaringen die beschikbaar waren in de wizard Prestaties verplaatst naar de Performance Profiler. U vindt het CPU-gebruiksprogramma voor steekproeven en instrumentatie in het hulpprogramma Instrumentatie in de Performance Profiler. Met deze wijziging is de wizard Prestaties niet meer nodig en is deze verwijderd uit Visual Studio 2019. Daarnaast is de samplingoptie verwijderd uit de opdrachtregelhulpmiddelen voor Visual Studio-prestaties. Een vervangend opdrachtregelhulpmiddel zal worden uitgebracht in een van de komende previews.

Testhulpprogramma's

  • U kunt nu met de rechtermuisknop klikken op tests, testklassen of testprojecten in Solution Explorer om tests uit te voeren of fouten op te sporen.
  • Testuitvoeringen detecteren nu automatisch welke processorarchitectuur is ingesteld in de projecteigenschappen.
  • OSS UI-testhulpprogramma's zoals Selenium en Appium hebben aan populariteit gewonnen en worden ondersteund door een sterke community. Omdat deze frameworks industriestandaarden zijn geworden, hebben we coded UI-tests afgeschaft voor geautomatiseerde functionele tests op basis van de gebruikersinterface. Visual Studio 2019 is de definitieve versie van Visual Studio met testfuncties voor de gebruikersinterface van Coded. We raden u aan Selenium te gebruiken voor het testen van webtoepassingen en Appium met WinAppDriver voor het testen van desktop- en UWP-apps.
  • Visual Studio 2019 is de laatste versie van Visual Studio met functies voor loadtests. Voor klanten die hulpprogramma's voor belastingtests vereisen, raden we u aan alternatieve hulpprogramma's voor belastingtests te gebruiken, zoals Apache JMeter, Akamai CloudTest, Blazemeter.
  • In Visual Studio 2019 zijn sommige testvenster-API's die eerder als openbaar zijn gemarkeerd, maar die nooit officieel zijn gedocumenteerd, verwijderd. Ze zijn gemarkeerd als verouderd in Visual Studio 2017 om een vroege waarschuwing te geven aan onderhouders van extensies. Naar onze kennis hebben zeer weinig extensies een afhankelijkheid van deze API's genomen. Deze API's omvatten IGroupByProvider, IGroupByProvider, KeyComparer, ISearchFilter, ISearchFilterToken, ISearchToken en SearchFilterTokenType. Als deze wijziging van invloed is op uw uitbreiding, laat het ons dan weten door een probleem in te dienen in de ontwikkelaarscommunity.

Visual Studio Kubernetes Tools

De Visual Studio Kubernetes Tools, die eerder beschikbaar waren als een afzonderlijke extensie voor Visual Studio 2017, zijn nu geïntegreerd in de Azure-ontwikkelworkload in Visual Studio 2019.

Kubernetes-ondersteuning toevoegen aan een nieuw project

Als u Kubernetes-ondersteuning wilt toevoegen aan een nieuw project, opent u Visual Studio en selecteert u de optie Een nieuw project maken . Zoek in het venster Een nieuw project maken naar Kubernetes en selecteer de containertoepassing voor kubernetes-projectsjabloon .

Een containertoepassing voor Kubernetes maken
Een containertoepassing voor Kubernetes maken

Klik op Volgende en voer een projectnaam, locatie en oplossingsnaam in. Klik vervolgens op Maken. Selecteer de ASP.NET Core-toepassingssjabloon die u wilt gebruiken voor uw project en klik op OK. Visual Studio maakt automatisch een Dockerfile- en Helm-grafiek die u kunt gebruiken om uw nieuwe toepassing te bouwen en implementeren in een Kubernetes-cluster. U kunt deze artefacten indien nodig wijzigen.

Kubernetes-ondersteuning toevoegen aan een bestaand project

U kunt ook ondersteuning voor Kubernetes toevoegen aan een bestaande ASP.NET Core-toepassing. Open hiervoor het project in Visual Studio 2019. Klik in Solution Explorer met de rechtermuisknop op het project, wijs toevoegen aan en klik op Ondersteuning voor Container Orchestrator.

Ondersteuning voor containerorchestrator toevoegen
Ondersteuning voor containerorchestrator toevoegen

Kies Kubernetes/Helm in het dialoogvenster Container Orchestrator-ondersteuning toevoegen en klik op OK. Visual Studio maakt automatisch een Dockerfile- en Helm-grafiek (in een map met de naam grafieken) die u kunt gebruiken om uw toepassing te bouwen en te implementeren in een Kubernetes-cluster. Als een van deze artefacten al aanwezig is, worden ze niet overschreven. U kunt deze artefacten indien nodig wijzigen.

Een openbaar toegankelijk eindpunt maken

Wanneer u Kubernetes-ondersteuning toevoegt aan een nieuw of bestaand project, vraagt Visual Studio u of u een openbaar toegankelijk eindpunt voor uw toepassing wilt maken.

Openbaar toegankelijke eindpuntprompt
Openbaar toegankelijke eindpuntprompt

Als u op Ja klikt, configureert Visual Studio de Helm-grafiek voor uw toepassing om een Kubernetes-inkomend object te maken wanneer de toepassing wordt geïmplementeerd in een Kubernetes-cluster. U kunt deze optie op elk gewenst moment wijzigen door de Helm-grafiek te wijzigen.

Fouten opsporen in uw toepassing in Azure Kubernetes Service

Zodra u Kubernetes-ondersteuning hebt toegevoegd aan een nieuw of bestaand project, kunt u eenvoudig uw toepassing bouwen, uitvoeren en fouten opsporen in een live AKS-cluster (Azure Kubernetes Service), met behulp van een functie met de naam Azure Dev Spaces. Dit is handig voor het testen van uw project in de context van een daadwerkelijk Kubernetes-cluster of voor het opsporen van fouten in een service die deel uitmaakt van een veel grotere toepassing zonder dat u de hele toepassing lokaal hoeft te repliceren. Azure Dev Spaces bevat ook functionaliteit waarmee uw ontwikkelteam een AKS-cluster kan delen. Zie de documentatie van Azure Dev Spaces voor meer informatie over Azure Dev Spaces. Zorg ervoor dat Azure Dev Spaces is geselecteerd als het startdoel voor foutopsporing in Visual Studio om aan de slag te gaan.

Azure Dev Spaces selecteren als doel voor het starten van foutopsporing
Azure Dev Spaces selecteren als doel voor het starten van foutopsporing

Voordat u uw project voor het eerst start in Dev Spaces, configureert u het Azure-abonnement en het AKS-cluster dat u wilt gebruiken. Selecteer ook de ruimte waar u het project wilt uitvoeren.

Azure Dev Spaces configureren
Azure Dev Spaces configureren

Normaal gesproken voert uw team de meest recente stabiele versie van de hele toepassing uit in de standaardruimte . Vervolgens voert u uw versie uit van de service waaraan u werkt in een onderliggende ruimte van de standaardruimte . Er is nu geen noodzaak om de andere services in de kindruimte uit te voeren; Dev Spaces stuurt automatisch aanroepen van uw service door naar de stabiele versies van de services die worden uitgevoerd in de default-ruimte. Zie de zelfstudies voor teamontwikkeling in de documentatie van Azure Dev Spaces voor meer informatie over het instellen hiervan. Nadat u het juiste abonnement, het juiste cluster en de juiste ruimte hebt geselecteerd, klikt u op OK om door te gaan met de Dev Spaces-configuratie. Als u een cluster selecteert dat nog geen gekoppelde Dev Spaces-controller heeft, klikt u in het volgende dialoogvenster op OK om er automatisch een te maken.

Dialoogvenster Dev Spaces inschakelen
Dialoogvenster Dev Spaces inschakelen

Het maken van de controller duurt ongeveer 2 minuten. U kunt op de knop Achtergrondtaken klikken in de linkerbenedenhoek van het Visual Studio-venster om de status te zien.

Status van het maken van een Azure Dev Spaces-controller via Achtergrondtaken
Status voor het maken van een Azure Dev Spaces-controller via achtergrondtaken

Zodra u klaar bent voor een Dev Spaces-controller, drukt u op F5 of klikt u op de knop Foutopsporing in Azure Dev Spaces op de werkbalk om fouten in uw project in AKS op te sporen.

Azure Dev Spaces Debug-knop
Azure Dev Spaces debuggen knop

Dev Spaces synchroniseert uw code naar Azure, bouwt een containerinstallatiekopie met uw code en implementeert deze in uw AKS-cluster met behulp van de Helm-grafiek die in uw project is gedefinieerd. Visual Studio opent een externe foutopsporingsverbinding met de service die in het cluster wordt uitgevoerd, zodat u er net zo mee kunt werken als bij het opsporen van fouten in een service die lokaal wordt uitgevoerd.

Mobiele ontwikkeling met Xamarin

Deze release bevat verbeteringen in de workloadgrootte en de prestaties en betrouwbaarheid van Android-builds, evenals verbeteringen voor de productiviteit van Xamarin.Android en Xamarin.Forms.

  • De Xamarin-workload is nu slechts 7,69 GB, een 2x vermindering van Visual Studio 2017 versie 15.9 en een 3x verbetering ten opzichte van versie 15.7.
  • De IntelliCode-extensie ondersteunt nu Xamarin.Forms XAML.
Nieuw project bestand >

We hebben prestatieverbeteringen aangebracht die zijn gericht op het verminderen van de tijd die nodig is om een nieuw Xamarin-project te maken, zodat u uw apps sneller kunt bouwen. We nemen nu ook de NuGet-pakketten die door de templates worden gebruikt op als onderdeel van de installatie van de workload om de tijd voor het herstellen van pakketten te verkorten, vooral in situaties met lage bandbreedte of wanneer offline. Deze verbeteringen verminderen bij sommige gevallen de tijd voor een nieuw Xamarin-project om volledig te laden en te herstellen met bijna 50%.

Nieuwe Xamarin-projectvergelijking gif
Een nieuw Xamarin-project maken in Visual Studio versie 15.9 (links) en Visual Studio 2019 (rechts)
Voortgangsindicator bouwen

U kunt nu gedetailleerdere informatie over de voortgang van de build bekijken bij het bouwen van uw projecten. Als u op het pictogram achtergrondtaken in de linkerbenedenhoek klikt tijdens een build, wordt het huidige builddoel weergegeven dat wordt uitgevoerd. Dit kan handig zijn om te bepalen of de build nog steeds wordt uitgevoerd, maar het lang duurt voordat een doel is voltooid.

Voortgangsindicator voor Xamarin-build
Voortgangsindicator voor Xamarin-build
De basic preview-modus van Xamarin.Forms Previewer

U hoeft uw project niet meer te bouwen voor Xamarin.Forms XAML Previewer om een voorbeeld van uw code weer te geven. Als u aangepaste besturingselementen in uw XAML-bestand hebt, moet u mogelijk uw project bouwen om een voorbeeld te bekijken, of ze inschakelen voor rendering tijdens ontwerptijd.

Xamarin.Forms Previewer-apparaat vervolgkeuzelijst

U kunt nu wisselen tussen verschillende Android- en iOS-apparaten om een voorbeeld van uw Xamarin.Forms XAML te bekijken met behulp van de vervolgkeuzelijst voor het nieuwe apparaat.

Xamarin.Forms-apparaat uitklapmenu
Xamarin.Forms-apparaatkeuzelijst
Het eigenschappenvenster Xamarin.Forms

U kunt nu de meest voorkomende kenmerken van Xamarin.Forms-besturingselementen, cellen en indelingen bewerken in een eigenschappenvenster en deze wijzigingen direct in uw XAML bekijken.

Het eigenschappenvenster Xamarin.Forms
Het eigenschappenvenster Xamarin.Forms
Sjabloon voor Xamarin.Forms Shell

We hebben de Xamarin.Forms-sjablonen bijgewerkt om de nieuwste Xamarin.Forms-release te gebruiken en hebben ook een nieuwe sjabloonoptie toegevoegd voor een Xamarin.Forms Shell-app . Shell is erop gericht om de complexiteit van apps te verminderen en tegelijkertijd de productiviteit van ontwikkelaars te verhogen en te focussen op de renderingsnelheid en het geheugenverbruik. Deze sjabloon biedt u een bootstrapped shell-app voor Android en iOS.

Prestaties en betrouwbaarheid van Android Build

In Visual Studio 2017 versie 15.9 en Visual Studio voor Mac 7.7 hebben we de eerste buildprestaties en verbeteringen in de build-juistheid aangebracht. In Visual Studio 2019 en Visual Studio voor Mac 7.8 hebben we het bouwen en implementeren nog sneller gemaakt.

Prestaties van Android Build
*Android-build nu sneller dan een kop koffie halen*
  • U gaat nu gebruikmaken van de volgende generatie verpakkingshulpprogramma's van Android. Als u deze functie wilt inschakelen, voegt u de MSBuild-vlag toe aan de projectconfiguratie .csproj:
    • aapt2 verdeelt Android-pakketten in twee stappen: Compileren en koppelen. Dit verbetert de prestaties voor incrementele builds en biedt eerdere foutrapportage. Als er bijvoorbeeld wijzigingen in één bestand zijn, hoeft u dat bestand alleen opnieuw te compileren. <AndroidUseAapt2>True</AndroidUseAapt2>
  • Door dit hulpprogramma in uw projecten in te schakelen, schakelt u verbeterde prestaties in tijdens zowel buildtijd als runtime. Zie onze documentatie over het buildproces in Xamarin.Android voor meer informatie over deze eigenschappen.
Verbeteringen in Android Emulator

In Visual Studio 2019 zijn android-emulatorinstallatiekopieën eenvoudiger te maken. We blijven ook samenwerken met het Windows-team in de Update van Windows 10 oktober 2018, versie 1809, om de prestaties van de Android-emulator te verbeteren wanneer deze wordt uitgevoerd op Hyper-V.

  • Nieuwe gebruikers kunnen hun eerste afbeelding maken door simpelweg op het uitvoeringspictogram te drukken.
  • Onze ervaring voor het verkrijgen van emulatoren bepaalt automatisch de beste configuratie voor uw installatie en maakt standaard gebruik van hardwareversnelling (met Intel HAXM of Hyper-V) en snel opstarten.
  • Wanneer u een andere afbeelding wilt maken, kunt u Create Android Emulator selecteren in de vervolgkeuzelijst om Android Device Manager te openen.
Versnel uw build-tijden met onze verbeteringen voor bouwen met Xamarin.Android.

We hebben een reeks initiële verbeteringen in bouwprestaties uitgebracht. Vanaf vandaag bevat Xamarin.Android 9.1.1+ aanzienlijke verbeteringen in de buildprestaties in vergelijking met de vorige release. Bekijk onze Xamarin.Android 15.9 versus 16.0 build prestatievergelijking voor meer informatie.

Verbeterde snelle implementatie voor Xamarin.Android

Snelle implementatie biedt tot nu toe snellere incrementele uitroltijden door het overslaan van het opnieuw bouwen of uitrollen van het Android-pakketbestand (.apk-bestand) in scenario's waarin er geen wijzigingen zijn aangebracht in assets, resources, gedeelde systeemeigen bibliotheken die in de app zijn verpakt of door de gebruiker gedefinieerde klassen die overnemen van Java.Lang.Object. Verbeterde snelle implementatie breidt de ondersteuning voor snelle implementatie uit om zowel gedeelde systeemeigen bibliotheken als klassen die overnemen van Java.Lang.Object. Snelle implementatie-builds die gebruikmaken van deze nieuwe verbeteringen hoeven slechts een nieuw .apk-bestand te genereren in een beperkt aantal scenario's, bijvoorbeeld wanneer het AndroidManifest.xml bestand wordt gewijzigd vanwege een nieuwe Android.App.Application of Activity subklasse. Deze verbeteringen zijn nog niet standaard ingeschakeld in de huidige preview. Om ze in te schakelen, stelt u de $(AndroidFastDeploymentType) MSBuild-eigenschap Assemblies:Dexes in in uw .csproj-bestand:

<PropertyGroup> 
  <AndroidFastDeploymentType>Assemblies:Dexes</AndroidFastDeploymentType> 
</PropertyGroup>
Ondersteuning voor Dex Compiler(d8) en Code Shrinker(r8) van de volgende generatie in Xamarin.Android

Xamarin.Android ondersteunt nu de nieuwste Android dex compiler(d8) en code shrinker (r8). Als u deze functies wilt inschakelen, stelt u de MSBuild-eigenschappen $(AndroidDexTool) en $(AndroidLinkTool) respectievelijk in op d8 en r8 in uw .csproj-bestand

  • d8 is een dex-compiler van de volgende generatie die sneller wordt uitgevoerd en kleinere .dex-bestanden produceert met betere runtimeprestaties.
<PropertyGroup> 
  <AndroidDexTool>d8</AndroidDexTool>
</PropertyGroup>
  • r8 is een nieuw hulpprogramma voor het verkleinen en minificeren dat Java-bytecode converteert naar geoptimaliseerde dex-code die de noodzaak voor ProGuard vervangt.
<PropertyGroup> 
  <AndroidLinkTool>r8</AndroidLinkTool>
</PropertyGroup>

Raadpleeg onze documentatie voor meer informatie over d8 en r8.

Verbeteringen in Xamarin.Android Designer

We hebben een aantal productiviteitsverbeteringen aangebracht in de interacties in de gesplitste weergave.

  • Slepen en neerzetten direct vanuit de gereedschapskist naar de broneditor om uw Android-indelingen snel samen te stellen.
Android Designer-werkset naar broneditor
  • Selecteer elementen rechtstreeks vanuit hun XML-definitiereeks in de broneditor. We hebben dit geïmplementeerd door de caretpositie te synchroniseren met de bijbehorende Android-weergave, zodat u rechtstreeks vanuit de editor snel toegang hebt tot de eigenschappen van een element in het eigenschappenvenster.
Android Designer-broneditor naar eigenschapseditor
  • Gebruik een inlinekleurvoorbeeld voor uw XML-code, zodat u kunt zien welke kleuren worden gebruikt in uw bedieningselementen.
Voorbeeld van Android Designer-kleuren
  • Gebruik onze functie snelle informatie door de muisaanwijzer op een waarde te plaatsen om er meer over te ontdekken, zoals waar deze is gedefinieerd of wat de hexadecimale waarde voor de kleur is.
Snelle informatie over Android Designer
*Snelle informatie in actie*
Verbeteringen in Xamarin.Android Designer met initiële ondersteuning voor constraint layouts

We zijn begonnen met het verbeteren van de opstartsnelheid van de Android Designer. Als onderdeel van deze inspanning hebben we ook de meldingen verbeterd die de ontwerper biedt terwijl het wordt geladen.

Android Designer-uitvoer

Naast deze verbeteringen biedt Android Designer nu systeemeigen ondersteuning voor Android Pie (9.0) en biedt automatisch aanvullen voor ConstraintLayout kenmerken.

Betere optimalisaties voor XML IntelliSense en Opmerkingen maken met Xamarin.Android Designer

Wanneer u IntelliSense gebruikt om een widget toe te voegen aan een indeling, wordt er nu een volledige codefragmentervaring geboden, zodat de vereiste kenmerken vanaf het begin kunnen worden opgegeven. We hebben het slimme toevoegen en verwijderen van commentaar voor Android XML-indelingen toegevoegd.

Wees productiever met Behulp van Go-To-Definition en gebruik XML IntelliSense in Android-resourcebestanden en AndroidManifest.xml

U kunt nu Ctrl + klikken op resource-URL's om naar het bestand of de regel te gaan waar ze zijn gedefinieerd.

Android Designer Go-To-Definition

IntelliSense/autocomplete wordt nu ondersteund voor andere Android XML-bestanden dan lay-outs (kleuren, tekenreeksen, drawables, menu, Android-manifest, enzovoort).

Universeel Windows-platform

  • De IntelliCode-extensie ondersteunt nu XAML.
  • Om de complexiteit en grootte van de Installatie van Visual Studio te verminderen, zijn Windows Phone-emulators verwijderd uit de installatie van Visual Studio. U moet de emulators nu handmatig downloaden .
  • XAML-ontwerptools voor UWP-apps voor Windows 10 SDK's van vóór de Windows 10 Fall Creators Update (build 16299) zijn verwijderd. Uw toepassingen opnieuw instellen op Windows 10 versie 1709 of hoger om de XAML Designer te gebruiken of de XAML-editor te gebruiken.
  • UWP-testprojecten die worden gebruikt project.json om NuGet-afhankelijkheden te definiëren, worden niet meer ondersteund. U moet uw project upgraden om de nieuwe PackageReference indeling te gebruiken.
  • UWP JavaScript-apps worden niet meer ondersteund in Visual Studio 2019. U kunt geen JavaScript UWP-projecten (bestanden met extensie jsproj) maken of openen. Meer informatie vindt u via onze documentatie over het maken van Progressive Web Apps (PWA's) die goed werken in Windows.
  • U kunt net als voorheen blijven koppelen aan JavaScript UWP-apps, maar de Hulpprogramma's voor JavaScript-profilering (Network, CPU en Memory Profiler) zijn niet meer beschikbaar in Visual Studio 2019.

Sjabloonupdates voor Office-hulpprogramma's

In Visual Studio 2019 hebben we enkele wijzigingen aangebracht in de Office-, SharePoint- en VSTO-sjablonen.

  • De SharePoint 2019-sjablonen die zijn toegevoegd in Visual Studio 2017 15.9 zijn ook beschikbaar in Visual Studio 2019.
  • We hebben ondersteuning verwijderd voor SharePoint Sequentiële Werkstromen of Staatmachinewerkstromen. Hoewel u deze werkstromen niet kunt maken of openen in Visual Studio 2019, kunt u deze blijven bewerken in eerdere versies van Visual Studio.
  • Office 2010-sjablonen zijn niet meer beschikbaar. U kunt echter nog steeds bestaande Office 2010-projecten openen in Visual Studio 2019.
  • De office 2013- en 2016-sjablonen zijn hernoemd om aan te geven dat ze Office 2013 en hoger ondersteunen.

Team Explorer en Azure DevOps

We brengen een nieuwe, gestroomlijnde, ontwikkelaarsgerichte ervaring uit bij het verbinden van Team Explorer met een Azure DevOps-project.

  • Richt u op relevante werkitems door uw weergave te filteren en te draaien op basis van werkitems die aan u zijn toegewezen, de items die u volgt, de items die u in de discussie vermeldt en op basis van uw activiteit.

    • In elke weergave kunt u een werkitem inline maken, eenvoudige inlinebewerkingen uitvoeren, een werkitem als voltooid markeren en een werkitem koppelen aan wijzigingen die in behandeling zijn.
  • Maak een lokale vertakking van een werkitem waarmee het werkitem automatisch wordt gekoppeld aan de wijzigingen die zijn aangebracht in die lokale vertakking. Dit is de standaardervaring. Als u wilt overschakelen naar de verouderde ervaring, kunt u de Werkitems-ervaring instellen in Visual Studio. Houd er rekening mee dat deze nieuwe ervaring alleen waar is voor Git-opslagplaatsen. De nieuwe ervaring voor TFVC-opslagplaatsen zal beschikbaar zijn in een volgende update.

    Azure DevOps Work Item Hub
    *Azure DevOps Work Item Hub*
  • Zoek naar werkitems wanneer je een #mention doet in het commitbericht van wijzigingen die nog in behandeling zijn. Zie de pagina Werkitems weergeven en toevoegen met behulp van de pagina Werkitems voor meer informatie.

    Azure DevOps-#mentions
    *Azure DevOps #vermeldingen*
  • Ondersteuning voor Microsoft Project is verwijderd uit de invoegtoepassing Team Foundation Server Office Integration 2019 voor Visual Studio 2019 vanwege een lage acceptatie in Azure DevOps. U moet nu uw werkitems exporteren naar Excel en ze handmatig in Project plakken.

  • Ondersteuning voor PowerPoint is verwijderd uit de invoegtoepassing Team Foundation Server Office Integration 2019 voor Visual Studio 2019. Gebruikers kunnen echter nog steeds storyboards maken in PowerPoint en ze handmatig koppelen aan werkitems in Azure DevOps.

Application Insights en HockeyApp

  • Het venster Application Insights Trends is verwijderd in Visual Studio 2019 ten gunste van alternatieven die uitgebreider zijn. In plaats daarvan kunt u het Application Insights Search-venster gebruiken in Visual Studio of de uitgebreide set diagnostische hulpprogramma's in Application Insights in Azure Portal.
  • De wizards voor het toevoegen van de HockeyApp SDK en het maken van nieuwe bètadistributies zijn verwijderd. U wordt in plaats daarvan aangeraden Visual Studio App Center te gebruiken, de opvolger van HockeyApp. U kunt HockeyApp nog steeds normaal gebruiken, behalve zonder deze sneltoetsen in Visual Studio.

Pictogram voor releaseopmerkingen Problemen opgelost in Visual Studio 2019 RC

laatst bijgewerkt op 26 april 2019


Bekende problemen

Bekijk alle bestaande bekende problemen en beschikbare tijdelijke oplossingen in Visual Studio 2019 versie 16.0 door de onderstaande koppeling te volgen.

Bekende problemen met Visual Studio 2019


Geschiedenis van releaseopmerkingen voor Visual Studio 2019

Voor meer informatie met betrekking tot eerdere versies van Visual Studio 2019, zie de pagina Geschiedenis van de releaseopmerkingen van Visual Studio 2019.