Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Opmerkingen bij de release van
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
- 12 januari 2021 — (definitieve release) Visual Studio 2019 versie 16.0.22
- 08 december 2020 — Visual Studio 2019 versie 16.0.21
- 10 november 2020 — Visual Studio 2019 versie 16.0.20
- 13 oktober 2020 — Visual Studio 2019 versie 16.0.19
- 8 september 2020 — Visual Studio 2019 versie 16.0.18
- 11 augustus 2020 — Visual Studio 2019 versie 16.0.17
- 14 juli 2020 — Visual Studio 2019 versie 16.0.16
- 09 juni 2020 — Visual Studio 2019 versie 16.0.15
- 12 mei 2020 — Visual Studio 2019 versie 16.0.14
- 14 april 2020 — Visual Studio 2019 versie 16.0.13
- 10 maart 2020 — Visual Studio 2019 versie 16.0.12
- 14 januari 2020 — Visual Studio 2019 versie 16.0.11
- 10 december 2019 — Visual Studio 2019 versie 16.0.10
- 15 oktober 2019 — Visual Studio 2019 versie 16.0.9
- 10 september 2019 — Visual Studio 2019 versie 16.0.8
- 13 augustus 2019 — Visual Studio 2019 versie 16.0.7
- 9 juli 2019 — Visual Studio 2019 versie 16.0.6
- 11 juni 2019 — Visual Studio 2019 versie 16.0.5
- 14 mei 2019 — Visual Studio 2019 versie 16.0.4
- 30 april 2019 — Visual Studio 2019 versie 16.0.3
- 18 april 2019 — Visual Studio 2019 versie 16.0.2
- 09 april 2019 — Visual Studio 2019 versie 16.0.1
- 02 april 2019 — Visual Studio 2019
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.
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.
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.
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.
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.
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.
Visual Studio 2019 versie 16.0.16
uitgebracht op 14 juli 2020
Problemen opgelost in 16.0.16
- Regressie van Compiler CodeGen opgelost voor het aanroepen van een virtuele functie met v15.9
- Een fout in de C++ linker waarbij importen ontbraken bij het gebruik van umbrella LIBs met verschillende hoofdletters in de postfix van de DLL-naam is opgelost.
- Er is een fout opgelost in de ARM64 C++-compiler waarbij de verkeerde waarden na setjmp konden worden hersteld.
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.
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
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
Visual Studio 2019 versie 16.0.12
uitgebracht op 10 maart 2020
Problemen opgelost in 16.0.12
- VS Preview 2019 vcruntime.h veroorzaakt RC4011-waarschuwing
- Nieuwe Spectre-mitigatieopties in de C++-compiler:
/Qspectre-load &/Qspectre-load-cf voor speculatieve laadbeveiliging.
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
CVE-2020-0789 Visual Studio-extensie-installatieservice Dienstonderbrekingskwetsbaarheid
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.
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.
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
- Assembly komt niet overeen met code voor functie-
- Visual Studio reageert niet meer op het maken van een nieuw SSIS-project
- Verbeterd probleem met vastlopende gebruikersinterface na langdurig gebruik van de editor.
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.
Visual Studio 2019 versie 16.0.7
uitgebracht op 13 augustus 2019
Problemen opgelost in Visual Studio 2019 versie 16.0.7
- Er is een prestatieregressie opgelost tijdens onderbrekingspunttreffers en -stappen.
- Er is een prestatieregressie opgelost bij het opstarten van IntelliTrace.exe.
- Er is een fout opgelost die een crash veroorzaakte wanneer de TFS niet kon worden bereikt.
- Oplossing voor HRESULT-E_FAIL buildfout in sommige C++-projecten bij een upgrade naar 16.0.1
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.
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.
Visual Studio 2019 versie 16.0.5
uitgebracht op 11 juni 2019
Problemen opgelost in Visual Studio 2019 versie 16.0.5
- Er is een bekend probleem opgelost: er is geen momentopname gemaakt voor systeemeigen C++-code in het hulpprogramma Geheugengebruik in het venster Diagnostische hulpprogramma's tijdens foutopsporing.
- Verbeterde prestaties bij het laden van Visual Studio.
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
- Verbinden met IIS-prompt voor herhaaldelijk verbinden
- WPF-toepassingen zijn verbroken na update van FW 4.8.
- als u typescript 3.3 installeert, wordt de compilatie van versie 2.2 uitgeschakeld.
- Kan foutopsporingsprogramma niet koppelen bij het koppelen van meerdere opstartprojecten in Visual Studio 2019.
- Bekend probleem: het Applicatie-tabblad van VB-projecteigenschappenpagina's is gebroken wanneer het .NET Framework 4.8 Developer Pack wordt geïnstalleerd.
- Visual Studio-extensies kunnen niet worden geïnstalleerd tijdens het overschrijven van kernbestanden van NuGet.
- microsoft.diagnosticshub.dotnetobjectalloc.vsix ontbreekt in het offline-installatieprogramma.
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.
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
- De optie Verwijderen ontbreekt in het contextmenu van Solution Explorer in Xamarin Forms Android-projecten.
- Xamarin.Android: kan doelframework 28 niet selecteren in de android-manifestinstellingen.
- Kan bestand of assembly 'Microsoft.VisualStudio.Web.PageInspector.Loader, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' of een van de bijbehorende afhankelijkheden niet laden. Het systeem kan het opgegeven bestand niet vinden.
- 'Er is een fout opgetreden bij het uitvoeren van de geselecteerde codegenerator' bij het maken van een nieuwe weergave.
- Android Berechtigungsliste ist leer - Android machtigingenlijst is leeg.
- Ontbrekende pictogrammen voor .axml-bestanden in Visual Studio 2019.
- axmlpictogrammen worden niet weergegeven.
- Visual Studio-extensies kunnen niet worden geïnstalleerd tijdens het overschrijven van kernbestanden van NuGet.
- C#-switchinstructie voor een constante expressie kan slechte compilerfouten veroorzaken.
Releasenotitiespictogram Visual Studio 2019 versie 16.0.2
uitgebracht op 18 april 2019
Problemen opgelost in Visual Studio 2019 versie 16.0.2
- De naam van de oplossing in de titelbalk wordt afgekapt.
- Ontbrekende interpolatie in waarschuwing bij het verpakken van Cloud Service-projecten.
- Visual Studio geeft geen foutbericht meer weer bij het opstarten nadat u de instellingen voor opnieuw instellen of importeren in bepaalde gevallen hebt ingesteld.
- Problemen met toegankelijkheid in Cloud Service-projecten waarbij verkeerde invoer in het configuratievenster voor diagnostische gegevens niet wordt gelezen door schermlezers, zijn opgelost.
Visual Studio 2019 versie 16.0.1
uitgebracht op 09 april 2019
Problemen opgelost in Visual Studio 2019 versie 16.0.1
- Optie toevoegen voor Het Windows-platform (UWP) bij het maken van een nieuw Xamarin.Forms-project van de projectsjabloon 'Mobile App (Xamarin.Forms)'.
- Help > Over de titel van het venster in Visual Studio 2019 wordt na de upgrade nog steeds 'RC' weergegeven.
- Bij het bijwerken van Visual Studio 2019 van RC naar GA blijven RC-snelkoppelingen voor Visual Studio achter.
- Visual Studio 2019 Preview 1.1 kan geen UWP xamarin-formulier maken.
- Fout bij laden van pakket vanaf Visual Studio 2019 na een upgrade van Preview 4.4 naar 16.0.
Pictogram
Visual Studio 2019
uitgebracht op 02 april 2019
Samenvatting van wat is er nieuw in Visual Studio 2019
Install
- Wees efficiënter nu Visual Studio-updates nu op de achtergrond worden gedownload.
- Installatiemodus voor Visual Studio-updates beheren.
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
- Bepaal hoe oplossingen worden geladen met behulp van de nieuwe prestatieverbeteringen van Visual Studio die van invloed zijn op stapsnelheid, vertakkingswisselsnelheid en meer.
- Bekijk de voortgang van de belasting van de oplossing in het taakstatuscentrum.
- Kies welke projecten u wilt laden bij het openen van de oplossing met oplossingsfilterbestanden.
- Verbeter je typeprestaties door de impact van hulpcomponenten te beperken.
- Schakel de nieuwe optie in om het herstellen van de status van de projecthiërarchie en de vensterstatus van het hulpprogramma uit te schakelen.
- Leer de nieuwe snelkoppeling voor Build Selectie en Alles bouwen snel in CMake met de nieuwe Alles bouwen opdracht.
- Code sneller met verbeterde prestaties van IntelliSense voor C++-bestanden in CMake-projecten.
- Laad grotere .NET Core-oplossingen en geniet van aanzienlijke geheugenreducties wanneer u er in de loop van de tijd mee werkt.
- Laad snel projectafhankelijkheden met een nieuwe opdracht voor het contextmenu van het project.
- Bekijk prestatietips in het prestatiecentrum.
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 enableof 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. -
switchexpressies: Biedtswitch-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
RangeenIndextypen die worden gebruikt in CoreFX voor segmentering, inclusief dex..yletterlijke syntaxis voor bereiken. -
Asynchrone streams die worden vertegenwoordigd door
IAsyncEnumerable<T>kunnen asynchroon worden opgesomd metawait foreachen kunnen worden geproduceerd metasync IAsyncEnumerable<T>-iteratormethoden. -
usingdeclaraties: Weggooien aan het einde van het huidige blok, zonder het nestniveau te verhogen.refstructs kunnen worden verwijderd door een openbareDispose()methode te implementeren. -
staticlokale functies: Lokale functies die zijn gemarkeerd metstatickunnen geen verwijzing maken naarthisof 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;wijstyalleen toe aanxalsxnullwas.
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-
- Fouten opsporen in eenheidstests in Node.js projecten.
- Ervaar aanvullende ondersteuning voor gebruikers die TypeScript-projecten bouwen vanuit NuGet- en NPM-pakketten.
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
- Profiteer van de toegevoegde ondersteuning voor het werken met .NET Core 3.0-projecten .
- Bekijk de CPU-profilering van ASP.NET.
- Gebruik het foutopsporingsprogramma voor momentopnamen voor .NET-web-apps die worden uitgevoerd op virtuele machines, virtuele-machineschaalsets en Azure Kubernetes Service.
- Containertoepassingen ontwikkelen voor Kubernetes met de Visual Studio Kubernetes Tools
- Ervaringsverbeteringen in de Azure DevOps-werkitemervaring met inline ondersteuning voor het toewijzen van werkitems en een verbeterde #mentions ervaring.
- Werk eenvoudiger met projectbestanden en ervaar een betere console-app voor .NET Core-hulpprogramma's.
- Ervaringsverbeteringen in de samenvatting van het publicatieprofiel voor alle apps. Daarnaast is er nu een nieuwe sectie met de naam Afhankelijkheden beschikbaar wanneer een app wordt gepubliceerd naar Azure App Service.
- Visuele verbeteringen ervaren bij het maken van een nieuwe ASP.NET-toepassing
- Publicatiereferenties opnieuw opgeven voor een bestaand Azure Functions-publicatieprofiel
Containerhulpprogramma's
- Ervaar een gestroomlijnder enkel project voor container- en foutopsporing.
- Gebruik toegevoegde ondersteuning voor debuggen in Alpine en aanvullende basisafbeeldingen.
Mobiele ontwikkeling met Xamarin
- Ga sneller aan de slag met een verminderde Xamarin-workloadgrootte en verbeterde prestaties bij het maken van nieuwe projecten.
- Bekijk gedetailleerdere informatie over de voortgang van de build .
- Gebruik IntelliCode met Xamarin.Forms XAML.
- Bekijk uw XAML-voorbeeld zonder dat u uw project eerst hoeft te bouwen met de nieuwe Basic Preview-modus in Xamarin.Forms Previewer.
- Bekijk een voorbeeld van uw Xamarin.Forms XAML op verschillende apparaten met de nieuwe vervolgkeuzelijst Xamarin.Forms Previewer.
- Bekijk het nieuwe eigenschappenvenster voor Xamarin.Forms-besturingselementen .
- Gebruik de zojuist toegevoegde Shell-sjabloon voor Xamarin.Forms.
- Ervaring met verbeteringen in de initiële en incrementele buildprestaties van Xamarin.Android.
- Maak nieuwe Android-emulators met behulp van het menu Doel implementeren.
- Versnel uw buildtijden met onze verbeteringen voor de build in Xamarin.Android.
- Ervaring verbeterde snelle implementatie en d8/r8-ondersteuning voor Xamarin.Android.
- Profiteer van verbeterde productiviteit in Xamarin.Android Designer.
- Probeer Xamarin.Android Designer-verbeteringen met initiële ondersteuning voor indelingen voor beperkingen.
- Wees productiever met de Xamarin.Android Designer met behulp van Go-To-Definition en verbeterde XML IntelliSense/Autocompletion voor Android-resourcebestanden.
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.
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.
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.
- Bekijk statusinformatie die is gekoppeld aan uw momenteel geopende bestand via de functie Documentstatusindicator.
- 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.
- Bekijk de inhoud van uw klembordgeschiedenis via een contextmenu die de klembordring uitbreidt (Ctrl + Shift + V).
- 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.
- 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.
- 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.
- 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.
- 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.
- 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:
- 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.
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.
- 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.
- U kunt nu aangepaste en DataSet visualizer-ondersteuning voor .NET Core gebruiken.
- 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.
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
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.
MSBuild
- De MSBuild-toolsetversie is veranderd van
15.0naarCurrent.MSBuild.exeis 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 installzijn 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:
- Anonieme recordtypen zijn toegevoegd aan de taal, waaronder volledige ondersteuning voor hulpprogramma's en de mogelijkheid om deze typen te verzenden naar JavaScript-objecten via de Fable-compiler .
- ValueOption-type en ValueOption-modulefunctie-pariteit met Option-type.
- tryExactlyOne functie voor matrices, lijsten en reeksen, bijgedragen door Grzegorz Dziadkiewicz.
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 mogelijkString.Concataanroepen 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
Attributeklasse, ontvangt u nu een waarschuwing van Vasily Kirichenko. - De
AssemblyInformationVersionAttributewaarde 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
Moduleachtervoegsel 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
uint16letterlijke achtervoegsel wordt correct weergegeven in de foutberichten voor ongeldige numerieke letterlijke waarden, door Teo Tsirpanis (#5712). - Foutberichten voor computationele expressies geven niet langer
asyncin 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
openis nu standaard ingesteld op het toevoegen van deopeninstructie 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
byrefenoutrefrefwaarden 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
inheritclausule 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.
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.
.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.
- 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.
- 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.
- 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 geenConsole.Read()-aanroepen meer toe te voegen aan uw console-apps. - Voor
ctrl + F5wordt 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
- Een langstaand probleem waarbij configuratiewijzigingen tijdens het ontwerp niet werden gerespecteerd, waardoor een project opnieuw wordt geladen, is opgelost.
- Het is nu mogelijk om naar de definitie te gaan van Razor naar C# in ASP.NET Core-projecten.
- Er is nu ondersteuning voor AvailableItemName-items.
- Er is nu ondersteuning voor het automatisch nesten van afhankelijke bestanden die via globbing aan het project worden toegevoegd.
- Ondersteuning voor XamlAppDef is toegevoegd door William Kent.
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
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.
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.
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 .
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.
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.
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.
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.
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.
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.
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.
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%.
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.
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.
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.
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.
- 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>
-
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.
- 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.
- 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.
- Gebruik een inlinekleurvoorbeeld voor uw XML-code, zodat u kunt zien welke kleuren worden gebruikt in uw bedieningselementen.
- 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.
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.
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.
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.jsonom NuGet-afhankelijkheden te definiëren, worden niet meer ondersteund. U moet uw project upgraden om de nieuwePackageReferenceindeling 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* 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 #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.
Problemen opgelost in Visual Studio 2019 RC
laatst bijgewerkt op 26 april 2019
- De waarde mag niet null zijn. Parameternaam: pUnk bij het inchecken van code in TFS.
- 'Subtype Designer' wordt onnodig toegevoegd aan xml-bestanden zoals csproj.
- TLS 1.0: De aanvraag is afgebroken: kan geen beveiligd SSL/TLS-kanaal maken.
- Solution Explorer: touchpad-gebaar scrollen is te gevoelig.
- [MSConnect 1173006] Takenlijst met filter ingesteld op Hele Oplossing geeft geen taken / todo's weer wanneer het bestand wordt gesloten.
- Xamarin.iOS kan geen afbeeldingsasset selecteren voor de afbeeldingsweergave.
- fatale fout C1001: Er is een interne fout opgetreden in de compiler.
- Visual Studio 2019 - EF6 edmx文件无法保存-VS 2019 Preview 1 - EF6 edmx-bestand kan niet worden opgeslagen.
- [WebKit] een niet-gedefinieerde klasse is niet toegestaan als argument voor het compileren van intrinsiek typekenmerk '__is_assignable' (regressie).
- Visaul Studio 2019: nuget package manager heeft een slecht contrast.
- Team Explorer - Wijzigingen: paneel past zich niet aan het Team Explorer-venster aan.
- Visual Studio 2017 SQL Server Object Explorer-serverlijst blijft niet behouden .
- IntelliSense-problemen met de Linux-x64-modus.
- Index was buiten bereik. Moet niet-negatief zijn en kleiner zijn dan de grootte van de verzameling. Parameternaam: index.
- Ongedaan maken van Visual Studio 2017 werkt niet/werkt niet meer (opnieuw gerapporteerd!!!).
- Intellisense werkt niet voor bestanden die zijn gemaakt onder WSL.
- Intellisense-fout: C++11 statische constexpr-lidinitialisatie zorgt ervoor dat het lid mogelijk niet wordt geïnitialiseerd.
- VS herstelt de windows-positie niet wanneer u de foutopsporing in-/uitschakelt.
- Werksetitems van derden worden telkens opnieuw geladen wanneer VS2019 Preview 2.2 wordt gestart.
- 'Instellen als opstartproject' laat de IDE vastlopen na de update naar VS2019 Preview Release 3.
- Visual Studio 2019-projecten die Visual Studio 2017 C++ bouwen, mislukken.
- Probleem met vernieuwen van de gereedschapskist opgelost.
- Toolbox-besturingselementen maken vssettings-bestand te groot.
- SSDT: Oplossing voor mislukte aanmeldingsfouten bij het uitvoeren van een nieuwe gegevensvergelijkingsfunctie .
- SSDT: Oplossing voor bronfout is niet beschikbaar bij het uitvoeren van Schema vergelijken .
- SSDT: Oplossing voor Schema Compare Generate Script genereert geen script .
- Zoeken in bestanden "Volgende overeenkomst vinden" UI is hinderlijk.
- Bestanden zoeken keert standaard terug naar het huidige document.
- Snelle verwijzingen blokkeren VS 2019 RC.
- PackageId:MsSqlCmdLnUtils; PackageAction:Install; ReturnCode:1603;.
- Foutenlijst toont geen fouten omdat het is ingesteld op 'Huidig document'.
- Kan geen voorwaardelijk onderbrekingspunt gebruiken voor PropertyInfo.Name waarde.
- Visual Studio loopt vast bij het parseren van macro's aan het einde van een bestand.
- Zoeken in Visual Studio 2019 is erg traag.
- Visual Studio loopt vast bij het starten van foutopsporing.
- vdproj wordt niet ondersteund in Visual Studio 2019 RC.
- Welkomstafbeelding van visual Studio-installatieprogramma bevat aanstootgevende elementen voor Chinees.
- De VSIX vereiste vooraf is verwijderd in Visual Studio 2019 RC, waardoor de compatibiliteit van extensies wordt verbroken.
- Project maken vanuit het startscherm negeert geselecteerde projectmap.
- De cpp-eigendialog wordt niet weergegeven wanneer u het projectmenu-item gebruikt of de vervolgkeuzelijst 'Configuratie beheren' selecteert.
- Visual Studio 2019 Build Tools : de titel van de ontwikkelaarsprompt zegt 'Opdrachtprompt voor Ontwikkelaars voor Visual Studio 2017'.
- Duitse vertaling met betrekking tot de Feedback Tool: Help > Stuur Feedback > Meld een Probleem.
- 自动完成功能,如果双击候选项,会丢失输入焦点,需要单机编辑器才能继续输入-AutoComplete function, if you double-click the candidate, will lose the input focus, need a stand-alone editor to continue to enter.
- Contextmenu's worden soms op de verkeerde monitor geplaatst in een configuratie met meerdere beeldschermen.
- Visual Studio 2019 conflicteert met QQ Pinyin.
- Kan het gemaximaliseerde Visual Studio-venster niet slepen.
- Toegangsschending C++ /CLI 15.9.5 ISO C++ Nieuwste conceptstandaard sinds 15.9.5.
- Het dialoogvenster Modale voortgang blijft permanent geopend, zelfs wanneer IDE reageert ('Oplossing voorbereiden', 'Project maken', Bewerken en Doorgaan, enzovoort).
- PackageId:OpenJDKV1; PackageAction:Uninstall; ReturnCode:0;.
- Visual Studio 2019 - Toolbox is altijd aan het initialiseren.
- Intellisense in Razor-bestanden (.cshtml) werkt niet.
- De vergelijking van SSDT-schema's markeert geen verschillen in bestanden.
- Visual Studio-uitzondering bij het openen van Razor cshtml-bestanden.
- Kan de extensie niet initialiseren.
- Asp Core: Fout bij het maken van een nieuwe weergave.
- VS 2019 RC -- Kan geen Winforms (.Net Core) maken - meerdere fouten.
- Projectverwijzingen worden niet geladen na vertakkingsswitch.
- Fout bij scaffolding: er worden geen scaffolders ondersteund voor dit item.
- De belastingconfiguratie werkt alleen voordat de eerste installatie is voltooid.
- Het type vervolgkeuzeproject = tekst is gedeeltelijk verborgen wanneer 'Tekst groter maken' wordt gebruikt.
- Verkeerde lokalisatie.
- Eigenschappenvenster in Forms Designer toont verticale schuifbalk zonder sleepgreep met automatisch schalen op 4K-beeldscherm in Visual Studio 2019 RC.
- Razor automatisch aanvullen werkt totdat u op tab/enter drukt, waarna het HTML gebruikt.
- VSIXInstaller.exe loopt willekeurig vast bij het installeren van meerdere extensies sequentieel in Visual Studio 2019 RC.1.
- Als u een } verplaatst, loopt Visual Studio vast.
- Telerik UI voor WPF-besturingselementen uitgeschakeld in Visual Studio 2019 Preview 3 en Preview 4.
- Unhandled System.OperationCanceledException.
- Visual Studio 2019 RC loopt vast bij het opstarten wanneer u een IME van derden (QQ Pinyin, Google IME) gebruikt.
- Visual Studio 2019 Preview 4 loopt vast als het losgekoppelde venster wordt gesloten.
- Intellisense-fout: C++11 statische constexpr-lidinitialisatie zorgt ervoor dat het lid mogelijk niet wordt geïnitialiseerd.
- Startpagina 'Verwijderen uit lijst' werkt niet meer.
- $(VCIDEInstallDir) is een ongeldig pad. Ontbrekende backslash in Microsoft.Cpp.Common.props.
- Visual Studio 2019 Preview 2.0+ loopt vast bij het openen van het soultion-filter.
- Bij de werkbalk Extensies beheren treedt een uitzondering op.
- CMake-configuratiecompilatortest mislukt voor LLVM/clang-cl
- SSDT: Oplossing voor het verbeteren van de prestaties van laadoplossingen met meerdere projecten.
- SSDT: Oplossing voor SQL-bestanden die niet altijd worden verwijderd bij het uitvoeren van een schema-vergelijking tussen een database en een project, waarbij vervolgens het verwijderen van de tabel wordt uitgevoerd.
- SSDT: Toegankelijkheidsoplossingen om gesproken mogelijkheden te verbeteren.
- SSDT: het oudere sqlncli-stuurprogramma vervangen door het nieuwe Microsoft ODBC-stuurprogramma voor SQL Server.
- We hebben een trage herlaading van meerdere C#- en Visual Basic-projecten opgelost.
- Wanneer IntelliSense aanwezig is en een gebruiker Shift + Enter typt, wordt de actieve selectie voltooid en wordt een nieuwe regel ingevoegd.
- We hebben een PMA-probleem opgelost waarbij tooltips en het lampje van de editor niet goed worden weergegeven.
- Meldingen over crashes die worden veroorzaakt door extensies worden nu opnieuw weergegeven.
- Meldingen over de prestaties van Visual Studio zijn beveiligd tegen manipulatie.
- We hebben een probleem opgelost met de weergave van werkbalken bij het slepen over verschillende schermen.
- We hebben een probleem opgelost met de weergave van Tools-opties bij het inschakelen van per-monitorbewustzijn.
- Verschillende DpiHelper-klassen zijn afgeschaft (uitbreidbaarheid).
- We hebben de schaal van het welkomstscherm aangepast om beter te passen bij de schaalfactor van de primaire monitor.
- Er is een probleem opgelost bij het importeren van instellingen waarbij waarschuwingen/fouten niet altijd correct werden gerapporteerd.
- We hebben een probleem opgelost waarbij de Opties van Hulpprogramma's softwarerendering aangaf, ongeacht de weergavelaag.
- Er is een probleem opgelost waarbij de naam van de geopende map niet werd weergegeven in de titelbalkregio.
- Er is een probleem opgelost met zoeken in bestanden bij de positionering wanneer per-monitor awareness is ingeschakeld.
- We hebben een probleem opgelost met het weergeven van dock-ornamenten wanneer per-monitor bewustzijn is ingeschakeld.
- U kunt nu Time Travel-foutopsporing gebruiken met het foutopsporingsprogramma voor momentopnamen in ASP.NET-apps die worden uitgevoerd op een Azure-VM. Houd er rekening mee dat deze functie mogelijk niet werkt in alle Azure-regio's tijdens de release.
- We hebben de Dockerfile-scaffolding in Visual Studio Tools for Kubernetes bijgewerkt om het Microsoft Container Registry te gebruiken in plaats van Docker Hub.
- Er is een probleem opgelost in Visual Studio Tools for Kubernetes waarbij het wijzigen van Dockerfile.develop ertoe leidt dat de service niet opnieuw wordt geïmplementeerd.
- Er is een probleem opgelost in Visual Studio Tools for Kubernetes waarbij een service in een Azure Dev Spaces-project niet kon worden gestart.
- Er is een probleem opgelost in Visual Studio Tools for Kubernetes, waarbij een service in een Azure Dev Spaces-project niet meer wordt uitgevoerd nadat foutopsporing is gestopt in Visual Studio.
- Er is een probleem opgelost in Visual Studio Tools voor Kubernetes, waarbij soms een dialoogvenster met een null-referentiefout wordt weergegeven wanneer accounts worden gekozen in het dialoogvenster van Azure Dev Spaces.
- Er is een probleem opgelost in Visual Studio Tools voor Kubernetes, waarbij het dialoogvenster voor clusterselectie wordt weergegeven bij het toevoegen van Kubernetes-orkestratieondersteuning.
- We hebben de weergave van de Import en Export Instellingen Wizard verbeterd wanneer de monitorbewuste modus wordt gebruikt.
- We hebben de grootte van het dialoogvenster Nieuw project aangepast voor monitor-afhankelijke uitvoering.
- We hebben een aantal visuele verfijningen aangebracht in het startvenster
Bekende problemen
Bekijk alle bestaande bekende problemen en beschikbare tijdelijke oplossingen in Visual Studio 2019 versie 16.0 door de onderstaande koppeling te volgen.
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.
Visual Studio 2019 versie 16.0