Visual Studio 2022
Vi är glada över att kunna meddela tillgängligheten för Visual Studio 2022 v17.12. Den här uppdateringen fokuserar på att ge fantastiska utvecklarupplevelser för att arbeta med .NET 9--projekt och nya AI-produktivitetsfunktioner, tillsammans med kontinuerliga förbättringar överallt.
Funktioner
Funktionslista för 17.12 som släpptes den 12 november 2024.
Produktivitet
Kopiera från fellistan 📣
Kopiera ett fel från fellistan kopieras nu bara beskrivningen i stället för hela raden till Urklipp.
Du ser ett fel i fellistan som du inte vet hur du åtgärdar. Så du väljer den och trycker på Ctrl+C för att kopiera beskrivningen för en webbsökning. När du har klistrat in den i sökmotorn inser du att den kopierade alla kolumnrubriker och radvärden i stället för bara beskrivningen. Nu måste du ta bort allt utom felbeskrivningen innan du kan utföra webbsökningen. Det här är besvärligt, men nu har vi en fix!
När du kopierar ett fel från fellistan med hjälp av Ctrl+Ckopieras endast beskrivningen till Urklipp. Det gör det enklare att söka efter felet online eller dela det med andra.
Du kan fortfarande kopiera hela raden genom att högerklicka på felet och välja Kopiera rad från snabbmenyn eller trycka på Ctrl+Skift+C.
Om det du ville göra med felbeskrivningen var att göra en webbsökning trycker du bara på Ctrl+F1 för att söka efter information om felet online.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Gå till rad var som helst i Kodsökning 📣
I Kodsökning kan du nu navigera till en specifik rad i det aktuella dokumentet eller något annat angivet dokument.
Ibland vet du att det finns ett problem på en viss rad i koden och du vill komma till den snabbt. Du kanske fick höra om ett fel som uppstod på rad 43 i en fil, eller om du vill gå till botten med en specifik fil.
Kodsökning stöder nu snabb navigering till en specifik rad i koden.
Öppna Kodsökning och gå till en rad i det aktuella dokumentet med hjälp av kolon + radnummer. Till exempel navigerar
:39
till rad 39 i den aktiva filen.
Du kan också gå till en rad i ett annat dokument med hjälp av filnamnet + kolon + radnummer. Till exempel navigerar
Order:43
till rad 43 i Order.cs. Om du inte anger det exakta filnamnet försöker sökningen hitta den bästa matchningen.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Docka fönstret Kodsökning 📣
Du kan nu fritt placera kodsökningsfönstret med funktioner som dockning och automatiskt döljande.
Om du behöver kod- eller funktionssökning för att hålla dig ur vägen har du nu mer kontroll över sökfönstrets beteende.
Nu kan du docka sökfönstret och utföra verktygsfönsteråtgärder med det, till exempel Solution Explorer och andra.
När du har öppnat kodsökning eller funktionssökningklickar du på rutaikonen längst upp till höger för att konvertera den till ett verktygsfönster. Du kan välja att docka den någon annanstans, öppna den, dölja automatiskt osv. Du kan återgå till det avvisande popup-fönstret genom att klicka på ikonen längst upp till höger.
Vi har också förenklat och rensat förhandsversionen i sökningen. Det finns nu en knapp, som anges med en ögonikon, för att aktivera och inaktivera förhandsgranskningen.
Förhandsgranskningspanelens position justeras också baserat på sökfönstrets dimensioner.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Anpassa dold textindikator 📣
Ange anpassade färger för den komprimerade textindikatorn i Visual Studio-redigeraren.
Nu kan du anpassa redigeringsupplevelsen ytterligare med nya alternativ för att anpassa den komprimerade textindikatorn:
Om du vill prova och ange anpassade förgrunds- och bakgrundsfärger för var och en går du till Verktyg > Alternativ > Miljö > teckensnitt och färger.
Där hittar du två nya objekt för anpassning:
- komprimerad textindikator (komprimerad)
- komprimerad textindikator (expanderad)
Du kan ange färgerna för de komprimerade och expanderade indikatorerna oberoende av varandra med hjälp av fördefinierade färger eller anpassade färger som du väljer.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Uppdatera 📣
Nu kan du uppdatera resultatet till ett tidigare Sök för att få up-to-date-sökmatchningar.
Vi har hört från många användare att det är frustrerande att behöva öppna sökfönstret igen och gå igenom rörelserna med att göra om en sökning för att få uppdaterade resultat. Du kanske bara omstrukturerade kod och vill bekräfta att allt har ändrats som förväntat, eller så har du hämtat några nyligen gjorda ändringar och behöver din senaste Sök-åtgärd för att återspegla dessa uppdateringar.
När du har slutfört Sök i filerhar du nu möjlighet att uppdatera sökresultatet i fönstret. Du får dina uppdaterade resultat utan att behöva göra om sökningen.
Vi har också gjort om det tidigare alternativet Upprepa sökning för att skilja det från Uppdatera. Den representeras nu som Ändra sök med en pennikon. Den här knappen öppnar fortfarande Sök i filer med samma sökvillkor som du använde för resultatfönstret.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Mer utrymme för vågrät rullningslist 📣
Du kan nu styra synligheten för filnivåindikatorerna i CodeLens.
Området med den vågräta rullningslisten kan bli ganska rörigt i Visual Studio. Vi hjälper till att göra det enklare att rensa det genom att inaktivera indikatorerna på filnivå i CodeLens som standard.
Om du vill aktivera alternativet kan du hitta Visa codelens-indikator på filnivå under Verktyg > Alternativ > Textredigeraren > Avancerat. Det här alternativet påverkar synligheten för filtyper som har codelens-kontrollen på filnivå i den nedre redigerarmarginalen, till exempel XAML, HTML och CSS, och påverkar inte filer som innehåller infogade CodeLens.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Rensning av icke-blockerande kod vid sparande
När kodrensning körs på Spara fungerar den nu på ett icke-blockerande sätt för en smidigare kodning.
Tidigare när en kodrensning körs på Spara kan du inte utföra några åtgärder i IDE:t. Vi har nu förbättrat detta så att det fungerar på ett icke-blockerande sätt.
Rensningsprocessen körs i bakgrunden och kan avbrytas automatiskt om du fortsätter skriva, vilket ger en smidigare och mer dynamisk kodningsupplevelse.
transitiva beroenden i Package Manager-användargränssnittet på lösningsnivå
När du tittar på fliken Installerad i Visual Studios pakethanterargränssnitt på lösningsnivå visas nu både direkta och transitiva paket.
Tidigare på fliken Installerad i Visual Studios pakethanterargränssnitt kunde du bara se både direkta och transitiva beroenden för dina projekt. Med den här versionen har vi lagt till möjligheten att se transitiva beroenden även på lösningsnivå.
transitiva beroenden med sårbarheter i Solution Explorer
När du anger
NuGetAuditMode
tillall
visar Solution Explorer indikatorer för transitiva beroenden med sårbarheter.NuGet Audit, som först lades till i Visual Studio 17.8 (och .NET 8), ger varningar under återställningen om några paket som används av projektet har kända sårbarheter.
Mer information om NuGet-granskning, inklusive alla konfigurationsalternativ, finns i dokumentation om NuGet-granskning.
Dessa sårbarheter kan finnas i dina direkta beroenden och i transitiva beroenden (paket som dina beroenden är beroende av). Om du nu anger
NuGetAuditMode
tillall
visar Solution Explorer indikatorer inte bara för direkt utan även för transitiva beroenden med sårbarheter.
GitHub Copilot
Ställ fler frågor till GitHub
Sök på GitHub för att hitta incheckningar, problem, pull-begäranden, lagringsplatser och ämnen direkt från Visual Studio.
Nu kan du använda GitHub Copilot Chat för att söka i GitHub för att hitta incheckningar, problem, pull-begäranden, lagringsplatser och ämnen.
Du kan ställa frågor som:
- @github Vad är alla öppna PR:ar tilldelade till mig?
- @github Vilka är de senaste problemen som har tilldelats mig?
- @github När var den senaste versionen?
- @github Visa mig de nyligen sammanfogade PR:erna från @davidfowl
Den här funktionen är tillgänglig för alla GitHub Copilot-användare. Läs mer om tillgängliga GitHub Skills- i GitHub Copilot-dokumentationen.
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
Anpassade instruktioner för GitHub Copilot
Skapa en fil som automatiskt lägger till information i alla frågor som du ställer till GitHub Copilot Chat.
Med GitHub Copilot kan du få chattsvar som är skräddarsydda för teamets arbetsflöde, önskade verktyg och projektspecifika – helt enkelt genom att tillhandahålla kontext. I stället för att lägga till den här kontextuella informationen i varje chattfråga kan du skapa en fil som tillhandahåller den här informationen automatiskt. Även om den här ytterligare kontexten inte visas i chatten är den tillgänglig för GitHub Copilot, vilket gör att den kan generera mer exakta och relevanta svar.
Så här aktiverar du anpassade instruktioner
- Aktivera funktionen via Tools > Options > GitHub > Copilot> och kontrollera (förhandsversion) Aktivera anpassade instruktioner som ska läsas in från .github/copilot-instructions.md-filer och läggas till i begäranden.
- Lägg till copilot-instruction.md i roten av respository i .github-filen och skapa filen om den inte redan finns.
Läs mer om att skapa anpassade instruktioner här
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
Modellval i GitHub Copilot Chat
GitHub Copilot kan du nu välja din modell.
OpenAI o1-preview och o1-mini är nu tillgängliga för alla användare i GitHub Copilot Chat i Visual Studio.
Nu kan du prova dessa modeller med hjälp av o1-preview, o1-mini eller standardmodellen GPT-4o för att driva GitHub Copilot Chat. Med modellväxling tillgänglig kan du sömlöst gå från att förklara API:er eller generera grundläggande kod till att skapa invecklade algoritmer eller felsöka logikfel.
Besök GitHub Changelog för att lära dig mer om den här funktionen.
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
Förbättrad kontextbaserad förståelse
Förbättrad kontextuell förståelse i GitHub Copilot ger mer exakta svar.
Förbättrad kontextuell förståelse i GitHub Copilot
GitHub Copilot erbjuder nu förbättrad kontextuell förståelse för att erbjuda ännu mer exakta svar. Med den här uppdateringen kan GitHub Copilot intuitivt tolka viktiga egenskaper i koden och skräddarsy förslag efter projektets unika behov. Den här smartare metoden för kodhjälp är utformad för att hjälpa dig att arbeta mer effektivt, utan att behöva göra några frekventa kontextjusteringar.
Prova med GitHub Copilot idag!
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
uppdateringar av innehållsundantag
Innehållsundantag stöder nu undermoduler och kapslade lagringsplatser.
Vi har förbättrat hur vårt system hanterar undermoduler och kapslade lagringsplatser, vilket gör det enklare för dig att arbeta med komplexa projektstrukturer.
Dessutom har vi lagt till stöd för icke-Git-lagringsplatser, vilket utökar flexibiliteten i arbetsflödet och gör att du smidigt kan integrera ett bredare utbud av projekt.
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
AI-kontroll av smarta variabler
Optimera ditt felsökningsarbetsflöde med integrerad AI-variabelgranskning.
Att inspektera och analysera värden från Locals, Autos och DataTips har aldrig varit enklare med Fråga GitHub Copilot i Visual Studio. Högerklicka bara på valfritt värde för att få detaljerade AI-drivna insikter om fel, oväntade resultat eller avvikelser – allt utan att lämna din IDE.
Den här funktionen förbättrar felsökningshastigheten avsevärt genom att analysera variabler i realtid i din IDE när oväntade värden uppstår.
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
AI-baserad IEnumerable Visualizer
AI-baserade LINQ-redigerbara uttryck i IEnumerable Visualizer.
Vi har förbättrat funktionen för redigerbara uttryck i IEnumerable Visualizer med AI-hjälp. Med den nya Ask Copilot-funktionen kan användarna använda AI direkt i textrutan redigerbara uttryck för att skapa komplexa LINQ-uttryck.
Om du vill komma åt GitHub Copilot-chatten klickar du bara på GitHub Copilot-ikonen i det nedre högra hörnet i avsnittet redigerbart uttryck. I chatten hittar du exempel på LINQ-syntaxexempel. Dessutom kan du beskriva din fråga på naturligt språk, och GitHub Copilot genererar motsvarande LINQ-fråga. Om du vill använda LINQ-frågefiltrering på visualiseraren använder du knappen Visa i Visualiserare i chatten.
Den ger omedelbar feedback och vägledning, vilket gör processen med att skapa komplexa filter och transformeringar mer intuitiv och effektiv.
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
Felsöka tester med GitHub Copilot
Få hjälp med felsökning av misslyckade tester med hjälp av felsökningstester med GitHub Copilot.
Behöver hjälp med att felsöka dina misslyckade enhetstester. Nu kan GitHub Copilot hjälpa dig genom att ge dig en felsökningsplan och vägleda dig genom att felsöka det misslyckade testet för att komma närmare att passera genom att klicka på knappen Debug med Copilot i Test Explorer.
När du startar funktionen ger GitHub Copilot dig en felsökningsplan, anger lämpliga brytpunkter och tittar på variabler och startar felsökningssessionen. När den når brytpunkten ger den GitHub Copilot värden för de övervakade variablerna och bestämmer nästa steg, fortsätter felsökningen eller åtgärdar problemkoden. Du kan fortsätta med den här konversationen tills du har ett godkänt test.
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
Åtgärda kod med GitHub Copilot 📣
GitHub Copilot hjälper dig att lösa kodproblem.
GitHub Copilot är nu integrerat i glödlampan och fellistan, vilket ger dig snabba korrigeringar och insiktsfulla förklaringar av kodproblem. Oavsett om du utvecklar i C# eller C++, hjälper den här funktionen dig att förstå och lösa problem i din kodbas mer effektivt.
Kom igång genom att anropa glödlampan och välja Fix with Copilot. Detta startar en infogad chatt med GitHub Copilot, som ger dig en tillgänglig korrigering.
Du kan också välja GitHub Copilot-ikonen i fellistan för att öppna chattpanelen, där du hittar detaljerade förklaringar och lösningar för felet.
Genom att utnyttja LLM:er ger GitHub Copilot användbara förklaringar och korrigeringar direkt i glödlampan och fellistan, vilket förbättrar din kodningsupplevelse.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
Bättre AI-slutföranden för C#
GitHub Copilot tar in ytterligare kontext från relevanta källfiler för att förbättra slutförandet av C#.
GitHub Copilot-kodslutningar ger förslag för automatisk komplettering infogade när du kodar. Dessa förslag genereras baserat på innehållet från din aktiva fil och andra öppna filer i redigeringsprogrammet. Vi har dock upptäckt att inkorporering av mer relevanta kontexter avsevärt förbättrar dessa förslag.
För att förbättra upplevelsen för C#-utvecklare har vi uppdaterat GitHub Copilot för att inkludera ytterligare C#-kontext, till exempel tillgängliga typer och metoder i slutföranden.
Med den senaste versionen av Visual Studio tar GitHub Copilot nu automatiskt hänsyn till semantiskt relevanta filer för ytterligare kontext, även om dessa filer inte är öppna i redigeringsprogrammet. Denna förbättring hjälper till att minska hallucinationer samtidigt som mer relevanta och korrekta förslag.
Före: Semantiskt relevanta filer betraktas inte som kontext för GitHub Copilot-slutföranden
Efter: Semantiskt relevanta filer betraktas som kontext för GitHub Copilot-slutföranden
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
referenskod i GitHub Copilot
Introduktion till kodreferenser i GitHub Copilot, så att du kan tillåta kodförslag som innehåller offentliga kodmatchningar samtidigt som du får detaljerad information om matchningen.
Vi är glada över att kunna meddela att kodreferenser nu är tillgängliga i GitHub Copilot i Visual Studio!
Den här nya funktionen ger insyn för utvecklare genom att meddela dem när GitHub Copilot-förslag matchar offentlig kod. Nu kan du se matchande kod, dess källfil och all tillhörande licensinformation, vilket hjälper dem att fatta mer välgrundade beslut vid kodning.
Med kodreferenser kan du antingen blockera eller tillåta förslag som innehåller offentliga kodmatchningar, förbättra kontrollen och anpassningen.
Genom att integrera kodreferenser i GitHub Copilot främjar vi kunskapsdelning, förbättrar transparensen och ger dig möjlighet att skapa med tillförsikt. Oavsett om du är en enskild utvecklare eller en del av ett större team, förbättrar den här funktionen arbetsflödet och hjälper dig att enkelt navigera i komplexiteten i offentlig kod.
Prova GitHub Copilot i Visual Studio idag och ta kontroll över din utvecklingsprocess med större transparens och förtroende!
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
guidad chatt i GitHub Copilot
Introduktion till ett nytt, mer konversationsrikt sätt att chatta med GitHub Copilot.
Vi introducerar ett nytt, mer konversationssätt för att interagera med GitHub Copilot Chat!
Vi har introducerat ett mer interaktivt och konversationsrikt sätt att använda GitHub Copilot Chat. I stället för att känna dig fast eller osäker vägleder GitHub Copilot dig med klargörande frågor när kontexten är oklar, vilket säkerställer mer exakta och användbara svar.
Den här guidade chattupplevelsen hjälper dig att förfina dina frågor, erbjuda förslag och säkerställa smidigare och mer produktiva interaktioner. Med den här nya chattmodaliteten får du en smartare och mer intuitiv GitHub Copilot som anpassar sig efter dina behov när du kodar.
Ge den nya guidade chattupplevelsen ett försök idag och se skillnaden för dig själv!
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
GitHub Copilot-registrering
Kom igång snabbare i GitHub Copilot Chat!
Behöver du hjälp med att komma igång med GitHub Copilot Chat? Vi har introducerat två nya registreringsfunktioner som hjälper dig att komma igång snabbare.
Starter-prompter
Skicka ditt första meddelande till GitHub Copilot genom att klicka på någon av startfrågorna! Använd dessa uppmaningar för att se vilka funktioner GitHub Copilot har att erbjuda dig i arbetsflödet.
Fråga bibliotek
Om du behöver referera till några färdiga frågor igen klickar du på knappen Prompt Library (bokikon) för att se en lista över alla tillgängliga frågor. Det här biblioteket innehåller vanliga frågor, bara ett klick bort!
Oavsett om du utforskar nya kodningsuppgifter eller bara letar efter inspiration, är våra uppmaningar här för att hjälpa dig att dyka rätt in och börja få ut det mesta av GitHub Copilot Chat.
Ge en ett försök och se vart det tar dig!
Viktig
Om du vill använda den här funktionen måste du aktivera GitHub Copilot-
.NÄT
Uppnå mer med .NET 9 📣
.NET 9 ökar molnbaserad och intelligent apputveckling med fokus på produktivitetsförbättringar, effektiviserade distributioner och accelererad AI-integrering.
.NET 9 höjer molnbaserad och intelligent apputveckling med fokus på produktivitetsförbättringar, effektiviserade distributioner och accelererad AI-integrering, vilket ger överlägsen prestanda i en mängd olika program. Med fullt stöd för .NET 9 i Visual Studio 17.12 kan du enkelt utnyttja alla de senaste förbättringarna. Mer information om nyheter finns i Nyheter i .NET 9.
Dessutom hittar du uppdateringar av funktioner i IDE som gör det mer produktivt att arbeta med .NET och ASP.NET.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Ignorera varningar för specifika GitHub-rekommendationer som respekteras i Visual Studio
NuGet tillåter att du undertrycker varningar för specifika GitHub-rekommendationer och att supressionerna respekteras i Visual Studio.
NuGet Audit ger varningar när ett paket som används i projektet har en känd säkerhetsrisk. Vi rekommenderar alltid att du uppgraderar till en ny version av paketet, men om uppgraderingen är omöjlig och du är säker på att programvaran inte är i fara kan du ignorera varningar för specifika GitHub-rekommendationer genom att lägga till
NuGetAuditSuppress
objekt i projektfilen.<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <NuGetAuditSuppress Include="https://github.com/advisories/GHA1234" /> </ItemGroup> </Project>
Möjlighet att konfigurera nuget.org som granskningskälla
Nu kan du ange nuget.org som en granskningskälla för att få sårbarhetsinformation även när du använder andra NuGet-feeds.
NuGet Audit kräver en paketkälla som tillhandahåller en sårbarhetsdatabas. nuget.org tillhandahåller information om sårbarheter från GitHub Advisories Database.
Från och med Visual Studio 17.12 går det nu att ange granskningskällor i NuGet.Config- filer, så det krävs inte längre att nuget.org används som paketkälla.
Om du inte använder nuget.org som paketkälla och vill använda NuGet-granskning för sårbar paketrapportering under återställningen lägger du till följande i en NuGet.Config--fil i lösningskatalogen:
<confiuration> <!-- any existing config, including <packageSources> --> <auditSources> <add key="nuget.org" value="https://api.nuget.org/v3/index.json" /> </auditSources> </configuration>
Felsöka & diagnostik
Blazor WebAssembly felsöker 📣
En förbättrad felsökningsupplevelse för Blazor WebAssembly-appar som riktar sig till .NET 9 eller senare.
Visual Studio erbjuder nu en förbättrad felsökningsupplevelse för Blazor WebAssembly-appar som riktar sig till .NET 9 eller senare:
- Datatyper som visas i felsökningsprogrammet matchar nu de förväntade .NET-datatyperna.
- Skriv medlemmar och medlemssynlighet använder förväntade ikoner.
- Den visade anropsstacken rensas till visar bara .NET-anropsstacken och respekterar korrekt inställningen Just My Code.
- Modulfönstret stöds nu.
- Stöd för uttrycksutvärdering i fönstret Omedelbar och för klockor och villkorsstyrda brytpunkter utökas och förbättras.
Så här aktiverar du den nya felsökningsupplevelsen för förhandsversionen:
- Aktivera Aktivera den nya felsökningsinställningen .NET 9+ Mono.
- Installera den senaste .NET 9 SDK:en.
- Uppdatera Din Blazor-app till mål .NET 9.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Mätar histogram i profileraren
Förbättrade prestandainsikter med hjälp av mätar histogram i profilerarräknaren.
Den senaste förbättringen av Visual Studios prestandaprofileringssvit introducerar funktionen för mätar histogram. Med det här verktyget kan du identifiera och analysera histogramdata som genereras av histograminstrument. När du registrerar data från dessa instrument visualiseras histogramresultatet, vilket ger en tydlig representation av datadistributionen.
Dessutom erbjuder simbanediagrammet en detaljerad, segmenterad vy över prestandamått, vilket förbättrar din förmåga att hitta och åtgärda prestandaproblem effektivt.
Visningsmetod returnerar värden 📣
Felsökningsprogrammet visar nu infogade returvärden med AI-hjälp för bättre effektivitet.
Visual Studio-felsökningsprogrammet visar nu infogade värden för returinstruktioner som svarar på en av de mest efterfrågade funktionerna från utvecklarcommunityn.
Med den här förbättringen kan du se de exakta värden som returneras av funktioner direkt i koden, vilket eliminerar behovet av ytterligare kod eller tillfälliga variabler för att inspektera returvärden.
Med GitHub Copilot kan du ta det vidare genom att använda alternativet Fråga Copilot vid hovring för att analysera returvärden direkt i Visual Studio, så att du kan åtgärda problem omedelbart.
Det stöds i både intern och hanterad kod.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Exportera brytpunktsgrupper enkelt 📣
Enkel import och export av brytpunktsgrupper.
Visual Studio Breakpoint Groups har nu stöd för import- och exportfunktioner så att du enkelt kan hantera och underhålla brytpunktsstrukturer i flera projekt eller miljöer.
Med den här nya funktionen kan du exportera brytpunktsgrupper med deras konfigurationer och senare importera dem till olika lösningar, vilket säkerställer en konsekvent felsökningskonfiguration utan att behöva återskapa brytpunktsgrupper manuellt igen.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
IntelliSense för IEnumerable Visualizer 📣
Förbättrad IEnumerable Visualizer med IntelliSense för snabbare LINQ-frågor.
IEnumerable Visualizer har förbättrats med IntelliSense, vilket ger kodförslag och automatisk komplettering i realtid, vilket gör det snabbare och mer exakt att skriva LINQ-uttryck.
Den här förbättringen förenklar processen med att skapa och redigera frågor genom att erbjuda rekommendationer för smart kod, minska sannolikheten för fel och påskynda utvecklingstiden.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Analysera minnesanvändning över tid
Välj och jämför två minnesögonblicksbilder med hjälp av fönstret Diagnostikverktyg.
Fönstret Diagnostikverktyg stöder nu jämförelse av minnesögonblicksbilder, vilket gör det enklare att analysera minnesändringar över tid.
Om du vill använda den här funktionen kontrollerar du att du har minst två minnesögonblicksbilder som samlats in under fliken Minne i fönstret Diagnostikverktyg.
Välja ögonblicksbilder för jämförelse
- Håll ned tangenten Ctrl och klicka på ögonblicksbildsraderna för att välja två ögonblicksbilder.
- Du kan också hålla ned Skift--tangenten och använda
up/down
-piltangenterna för att välja två ögonblicksbilder i följd.Avmarkera ögonblicksbilder
- Håll ned tangenten Ctrl och klicka på den ögonblicksbild som du vill avmarkera.
Visa skillnaden
När du har valt minnesögonblicksbilderna som jämförelse klickar du på knappen Visa Diff ovanför listan över ögonblicksbilder för att visa skillnaderna mellan dem.
Git-verktyg
Hantera filbyte med Git 📣
Kom ihåg när du byter namn på filer med ett nytt meddelande.
När du byter namn på filer från Solution Explorer påminns du om att mellanlagra ändringarna för att se namnbytena i Git. Detta ökar ditt förtroende för att Git känner igen filändringen och spårar den korrekt. Vi fann att detta var en förvirringspunkt för många kunder, så vi arbetade med personer i utvecklarcommunityn för att skapa ett nytt meddelande.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
utkast och mallar för pull-begäranden 📣
Skapa utkast för pull-begäranden och starta dina beskrivningar med mallar i Visual Studio.
Nu kan du skapa utkast för pull-begäranden och starta dina beskrivningar med GitHub-mallar i Visual Studio. Det här var de två främsta begärandena för att skapa en pull-begäran.
Utkast till PR
Använd den nedrullningsbara menyn på knappen Skapa för att Skapa som utkast.
PR-mallar
Standard-PR-mallen används när du skapar en ny PR för både GitHub och Azure DevOps. Läs mer om hur du lägger till en PR-mall på lagringsplatsen i GitHub-dokumentationen och Azure DevOps-dokumentationen.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.Och göra den här undersökningen för att göra funktionen ännu bättre.
Skapa interna GitHub-lagringsplatser 📣
Visual Studio har nu stöd för att skapa interna lagringsplatser och innehåller vägledning för varje typ av lagringsplats för att ge dig mer förtroende när du startar ett nytt projekt.
Visual Studio har nu stöd för interna lagringsplatser för dina GitHub-organisationer. Vi har även tagit med vägledning för varje typ av lagringsplats för att ge dig mer klarhet om synligheten för det nya projektet beroende på vilket konto du använder.
dialogrutan
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Kopiera Git-länk 📣
Du kan få en GitHub- eller Azure DevOps-länk till en specifik kodrad för att göra det enkelt att dela med dina kollegor.
När du delar några rader med kod med en kollega kan det ofta vara användbart för dem att få extra kontext från lagringsplatsen. Men om de arbetar med något annat kan det ta för lång tid och störa deras arbete för att checka ut din gren.
Nu kan du markera den kod som du vill dela i redigeringsprogrammet, öppna snabbmenyn med ett högerklicka och under Git-undermenyn får du en delningsbar länk till koden i GitHub eller Azure DevOps. Detta gör det enkelt och enkelt att samarbeta, och det jämnar ut flödet mellan IDE och dina fjärrlagringsplatser på webben.
Du kan också hämta delningsbara länkar direkt från incheckningshistoriken. Detta gör att kod som för närvarande inte är utcheckad kan refereras lika enkelt.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
stöd för flera git-lagringsplatser 📣
Nu kan du skapa pull-begäranden och länka arbetsobjekt i scenarier med flera lagringsplatser för både GitHub och Azure DevOps.
Nu kan du skapa pull-begäranden och länka arbetsobjekt i scenarier med flera lagringsplatser. För både GitHub och Azure DevOps stöder vi dina integreringar när du använder lagringsplatsväljaren för att fokusera på en viss lagringsplats i dina scenarier med flera lagringsplatser.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Anpassa AI Git-incheckningsmeddelande 📣
Du kan lägga till ytterligare instruktioner i prompten för att generera ditt Git-incheckningsmeddelande med GitHub Copilot.
Nu kan du lägga till ytterligare instruktioner i prompten för att generera ditt Git-incheckningsmeddelande med GitHub Copilot. På så sätt kan du anpassa incheckningsmeddelandet så att det passar arbetsflödet och teamets standarder bättre. Du kan ange antalet rader som ska genereras, längden på raderna och till och med ange ett exempel på incheckningsformat. Redigera meddelandet i promptfältet under Tools > Options > GitHub > Copilot > Source Control Integration.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
IDE
Konfiguration av start av flera projekt 📣
Effektivisera felsökningen genom att konfigurera och spara startprofiler för specifika projekt i lösningar för flera projekt. Dela konfigurationer enkelt med ditt team.
Med funktionen Startkonfiguration för flera projekt kan du konfigurera och spara profiler för att starta specifika projekt i en lösning för flera projekt i fördefinierade tillstånd för felsökning.
Detta förenklar processen att arbeta med komplexa lösningar, förbättrar felsökningseffektiviteten och möjliggör enkel delning av konfigurationer mellan teammedlemmar.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Not
Den här funktionen måste vara aktiverad under Tools –> Hantera förhandsversionsfunktioner
MotW-säkerhetsvarningar
MotW-säkerhetsvarningar (Mark of the Web) är nu integrerade i den övergripande förtroendefunktionen.
Visual Studio visar en säkerhetsvarning när den identifierar att du försöker öppna innehåll som är taggat med MotW-identifieraren (Mark of the Web).
Den här nya förtroenderelaterade varningen förmedlar riskerna med att öppna innehåll från potentiellt osäkra källor som internetnedladdningar.
dialogrutan
Du kan ändra standardfunktionen för förtroende genom att gå till Förtroendeinställningar under Tools > Options > Environment.
Teams Toolkit nya AI-mallar
Teams Toolkit registrerar nya AI Teams-appmallar.
Teams Toolkit lägger till tre nya Teams AI-appmallar:
De är:
Grundläggande AI-chattrobot – dina egna andrepiloter i Microsoft Teams som skapats med Teams AI-bibliotek
Chatta med dina data – en intelligent chattrobotmall med domänkunskap från anpassad datakälla.
Teams Toolkit ger dig nu möjlighet att skapa Custom Copilot som är en AI-baserad chattrobot med RAG-funktioner som kan förstå naturligt språk och hämta domändata för att besvara domänspecifika frågor. Den här mallen har stöd för åtkomst till dina anpassade data i Custom Copilot-appen.
När du väljer den här mallen kan du välja två sätt att ansluta till dina data:
a. Azure AI Search-: chattroboten kan komma åt data i Azure AI-söktjänsten och använda dem i konversation med användare.
b. Anpassad datakälla: du kan lägga till vilken datakälla du vill i Custom Copilot-appen, till exempel filsystem eller vektordatabas.
AI Agent – en AI-agent i Teams som kan fatta beslut och utföra åtgärder baserat på LLM-resonemang.
Prova de nya AI-appmallarna för att starta DIN AI-resa i Teams!
Kopiera filer mellan instanser 📣
Nu kan du kopiera filer och mappar från Solution Explorer i en instans av Visual Studio till en annan.
Vi är glada över att kunna introducera en funktion med hög begäran i Visual Studio! Nu kan du smidigt kopiera och klistra in kodfiler och mappar mellan olika Visual Studio-instanser med hjälp av Solution Explorer. Välj bara önskad fil eller mapp, använd Ctrl+C eller Ctrl+X, växla till en annan Visual Studio-instans och använd Ctrl+V för att inkludera filerna eller mapparna i den nya lösningen. Alla ändringar återspeglas korrekt i filsystemet.
Förutom att kopiera och klistra in kan du också dra filer och mappar från en instans av Visual Studio till en annan.
Tidigare var den här funktionen endast tillgänglig för några projekttyper, men vi har nu utökat den till att omfatta alla större projekttyper i Visual Studio.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Moln
Azure App Service publicera säkerhetsuppdateringar
Publicering till Azure App Service på ett säkert sätt med hjälp av integrerade säkerhetsuppdateringar.
Azure App Services publiceringsvägledning rekommenderar kunder att inaktivera grundläggande autentisering och aktivera publicering via integrerad autentisering.
Den nya funktionen i Visual Studio 2022 inaktiverar grundläggande autentisering och möjliggör integrerad säkerhet för publicering till Azure App Service. Detta säkerställer att publicering av autentiseringsuppgifter hanteras på ett säkert sätt, vilket minskar riskerna med grundläggande autentisering.
När du publicerar till en Azure App Service som har grundläggande autentisering aktiverat (vilket inte rekommenderas), visas alternativet Aktivera grundläggande autentisering och det avmarkeras som standard. Kunder som behöver behålla grundläggande autentisering kan markera kryssrutan, men med tanke på rekommendationen är att inaktivera grundläggande autentisering avmarkeras detta som standard. Så du börja skydda om det är första gången du publicerar eller du bli säker när du har genomgått publiceringsprocessen när du har uppdaterat Visual Studio.
Om du nyligen har skapat webbappen via portalen eller den här eller någon framtida version av Visual Studio inaktiveras grundläggande autentisering som standard. För alla webbappar som redan har inaktiverat grundläggande autentisering kringgår vi oavsiktligt att webbappen blir mindre säker genom att inaktivera kryssrutan helt och hållet, så att du håller dig säker.
Stöd för Azure WebJobs Linux 📣
Publicering till Azure WebJobs i Linux stöds nu genom att högerklicka på Publicera i Visual Studio.
Plattformsoberoende .NET 5.0+ Konsolappar stöds i Azure WebJobs Linux, och nu kan du högerklicka på publicera din kod till Azure WebJobs i Linux från Visual Studio också!
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Azure Functions Flex Consumption
Publicera till Azure Flex Consumption-värdplan, för närvarande i förhandsversion.
Om du provar den nya Azure Functions Flex Consumption-värdplanen, som för närvarande är en förhandsversion, kan du högerklicka på Publicera till Flex från Visual Studio.
Flex Consumption utökar dina appars funktioner ytterligare och ger dig följande:
- Integrering av virtuellt nätverk utan extra kostnad
- Snabb och förutsägbar skalning med val av instansstorlek och samtidighetskontroll per instans
- Serverlös med skalning till noll och du betalar bara för instanser medan de är aktiva
- Cold Start-åtgärd med den valfria funktionen Always Ready-instanser
Läs mer om Flex Consumption i blogginlägget om meddelande eller dokumentation och prova något av våra exempel.
Säkerhetsuppdatering för anslutna tjänster
Gör dina appar och utvecklingsupplevelser säkrare.
I den här uppdateringen av Anslutna tjänster kan du nu ansluta din projektkod till Azure-resurser, till exempel Azure Storage, utan att behöva hemligheter eller anslutningssträngar i koden eller konfigurationen.
Nu ska du ge anslutningen ett namn, slutpunkterna sparas till konfigurationen i stället för den fullständiga anslutningssträngen. Det innebär färre hemligheter på disken, så din utvecklingstid blir säkrare som standard och drabbas av färre fel vid incheckning av hemligheter till källkontroll.
dialogrutan
Vi använder också de senaste Azure SDK:erna, så du får stöd för att ansluta till dina Azure-resurser med hjälp av din Visual Studio-inloggning (eller Azure CLI) i stället för att ansluta via en anslutningssträng. När du kör lokalt använder koden dina inloggade autentiseringsuppgifter för att komma åt resurserna. När du kör i Azure använder Azure SDK apptjänstens hanterade identitet för att få åtkomst till resurserna.
Anslutna tjänster ställer in allt åt dig och matar in lämplig kod för att använda integrerad identitet i stället för hemligheter. Under publiceringen konfigureras appen med rätt identitet och roller som krävs för att få åtkomst till resurserna.
Skrivbord
Förbättrad MSIX-verktyg för UWP-appar på .NET 9 📣
Visual Studio refererar nu till det nya fristående MSIX-verktyget för ett enskilt projekt för att paketera UWP-appar på .NET 9.
I den första förhandsversionen av UWP-stöd för .NET 9 förlitade vi oss på WindowsAppSDK för att tillhandahålla MSIX-verktyg för att paketera appar med hjälp av konfigurationen av ett enda projekt (i stället för att använda ett Windows Application Packaging-projekt, dvs. en .wapproj-fil). Detta medförde flera problem, varav det viktigaste är att det transitiva Beroendet för WebView2 från WindowsAppSDK också lades till automatiskt i alla UWP-appar, även när det inte behövs.
Vi har nu helt frikopplat det enskilda projektets MSIX-verktyg och publicerat det som ett nytt fristående NuGet-paket: Microsoft.Windows.SDK.BuildTools.MSIX. Detta omfattar allt som behövs för att skapa, distribuera och köra UWP-appar på .NET 9, samt generera MSIX-paket som ska publiceras i Microsoft Store eller separat inläsning. UWP på .NET 9-verktygen i Visual Studio lägger automatiskt till dessa två paketreferenser när det behövs:
Detta både tar bort det transitiva beroendet WebView2 fullständigt och det versionsfel som fanns för nya projekt i tidigare förhandsversioner när du inte manuellt anger egenskapen WindowsSdkPackageVersion i .csproj-filen. Med den här ändringen kommer nya projekt bara att byggas och köras utan att behöva några ytterligare ändringar!
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Sökning efter förbättrade WinUI-komponenter
Förbättra WinUI-projektkonfigurationen med förbättrad Visual Studio Installer-sökning, vilket förenklar komponentplatsen för utvecklare.
Effektivisera konfigurationen av WinUI-projektet ytterligare med vår senaste uppdatering av Visual Studio-installationsprogrammet! Utvecklare kan nu snabbt hitta WinUI-relaterade komponenter, vilket eliminerar den tidigare frustrationen över att navigera genom ett tomt sökresultat. Den här förbättringen förenklar konfigurationen av utvecklingsmiljön, vilket ger en mer intuitiv och effektiv användarupplevelse.
Öppna Visual Studio Installer, gå till fliken Enskilda komponenter och sök efter WinUI-relaterade nyckelord (WinUI, WinRT)!
.NET 9 SDK-stöd för UWP 📣
Visual Studio innehåller nu .NET 9 SDK med UWP-stöd direkt.
En av de åtgärder som krävs för att prova UWP på .NET 9 i den första förhandsversionen var att installera en nattlig version av .NET 9 SDK. Med den här nya versionen av Visual Studio behövs det inte längre.
Visual Studio innehåller nu .NET 9 SDK, som har allt nytt stöd för UWP på .NET 9 (specifikt logik för att referera till UWP XAML-projektionerna och för att konfigurera CsWinRT till projekttyper för UWP XAML-appar). Nu kan du skapa och köra UWP på .NET 9-projekt med .NET SDK som installeras automatiskt med Visual Studio.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Simplified .csproj for UWP 📣
UseUwpTools anges nu automatiskt av Visual Studio för moderna UWP-projekt på .NET 9.
UWP-appar och -bibliotek som använder .NET 9 används för att kräva två egenskaper i sina .csproj-filer:
UseUwp
, som konfigurerar .NET SDK för UWP XAML-appar ochUseUwpTools
, vilket gör att alla nya verktyg i Visual Studio kan skapa och köra UWP XAML-appar.Egenskapen
UseUwpTools
anges nu automatiskt av Visual Studio närUseUwp
anges för att göra .csproj mindre utförlig i det gemensamma scenariot. För avancerade scenarier är det fortfarande möjligt att välja bort genom att inaktiveraUseUwpTools
manuellt.📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
RID:er för UWP i .NET 9 fast 📣
UWP på .NET 9-klassbibliotek korrekt konfigurerar RID:erna till rätt värden för intern AOT.
Vi har åtgärdat en bugg i APPX-verktygen för UWP-klassbibliotek (och WinRT-komponenter) på .NET 9, som tillämpade körningsidentifierarna för UWP på .NET Native som standard (dvs. med prefixet
win10-
och inklusive plattformar som inte längre stöds, till exempel arm).APPX-verktygen ställer nu in rätt RID för .NET 9-projekt som standard:
win-x86;win-x64;win-arm64
. Du kan fortfarande ange dessa manuellt om du vill.📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
skapande av UWP-projekt har åtgärdats 📣
Vi har korrigerat guiden Universell mall som gjorde att en feldialogruta inte längre visades när nya UWP skapades för .NET 9-projekt.
Om du använder förhandsversion av VSIX- med de nya projektmallarna för UWP på .NET 9 kanske du har märkt att en feldialogruta visades direkt när du skapade ett nytt projekt. Detta var särskilt problematiskt när du skapade en ny lösning, eftersom Visual Studio inte skulle öppna den korrekt när projektet skapades. Det här problemet har nu lösts och det fungerar nu korrekt att skapa nya projekt som riktar sig mot UWP på .NET 9.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Webb
Begärandevariabler i HTTP-filer 📣
HTTP-filer stöder nu begärandevariabler. Det är där du kan skicka en begäran och sedan använda data från svaret eller begäran i framtida begäranden.
När du arbetar med HTTP-fileranropar ett vanligt scenario en slutpunkt, tar ett värde från svaret och skickar in en efterföljande begäran. Du kan till exempel anropa en slutpunkt för att autentisera en användare och sedan vid senare anrop kan du skicka den token som returnerades från inloggningsslutpunkten. Före den här versionen var detta inte möjligt i Visual Studio. I kodfragmentet nedan kan du se ett exempel på hur det fungerar i en HTTP-fil.
# @name login POST {{TodoApi_HostAddress}}/users/token Content-Type: application/json { "username": "{{myusername}}", "password": "{{mypassword}}" } ### GET {{TodoApi_HostAddress}}/todos Authorization: Bearer {{login.response.body.$.token}} ###
I ovanstående kodfragment finns det två begäranden, det första anropet till
/users/token
slutpunkten för att autentisera användaren. Direkt ovanför begäranderaden visas kommentaren# @name login
. Den här syntaxen ger begäran ett namn (login
i det här fallet) och konfigurerar den som en variabel för begäran. När begäran skickas kan du komma åt värden från svaret eller begäran i alla framtida begäranden som skickas från HTTP-filen. Eftersom detta är en begäran om inloggning bör du vara noga med att skydda dina hemligheter. I Visual Studio har vi stöd för åtkomst till hemligheter på ett säkert sätt. Mer information om hur du hanterar hemligheter finns i det här avsnittet i dokumenten.Den andra begäran anropar till en autentiserad slutpunkt,
/todos
, som returnerartodo
objekt för användaren. I begäran skickas token som en rubrik med raden.Authorization: Bearer {{login.response.body.$.token}}
Den
/users/token
slutpunkten returnerar ett svar i JSON. Token extraheras med ett JSON Path-uttryck,$.token
, i svarets brödtext. Om du använder en slutpunkt som returnerar XML i stället för ett JSON Path-uttryck kan du skicka ett XPath-uttryck. Stödet i Visual Studio har inspirerats av det befintliga OSS-tillägget för REST-klient som är tillgängligt för Visual Studio Code. Du kan läsa mer om begärandevariabler där. Vi kommer snart att lägga till dokumentation för att diskutera det här stödet i mycket mer detalj.📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Vitest-stöd i JavaScript och TypeScript 📣
När du använder JavaScript- och TypeScript-projekt kan du nu skapa testfall med Vitest.
I JavaScript- och TypeScript-projekt (JSTS), projekt som har tillägget .esproj, har vi lagt till stöd för att identifiera och köra tester som skapats med Vitest. Kom igång med Vitest-tester genom att i ett JSTS-projekt lägga till vitest-paketet med npm i Solution Explorer och sedan ändra projektfilen så att följande egenskaper deklareras.
<JavaScriptTestRoot>test\</JavaScriptTestRoot> <JavaScriptTestFramework>Vitest</JavaScriptTestFramework>
Kontrollera att värdet för
JavaScriptTestRoot
har rätt relativ sökväg till var testfilerna finns.Lägg till dina tester i rätt mapp och skapa projektet/lösningen. Därefter bör du se testfallen i Testutforskaren.
I Testutforskaren kan du se de olika testfallen som identifieras och köra testfallen.
Vi har ännu inte lagt till stöd för felsökning, men vi kommer snart att lägga till det stödet. Ett annat känt problem är när du dubbelklickar på ett testfall i Test Explorer. Det tar dig till den första raden i filen där testfallet har definierats. Vi kommer också att förbättra denna erfarenhet.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Inlay Tips för fler språk 📣
Stöd för Inlay Hint har lagts till i JavaScript, TypeScript, Python och Razor samt en inställning för att styra dess beteende.
Inlay-tips visar ytterligare information om källkod som återges infogad. Detta används vanligtvis för att visa härledda typer, parameternamn och annan implicit information från koden direkt i redigeringsprogrammet.
Vi har lagt till stöd för att visa Inlay-tips i JavaScript, TypeScript, Razor och Python. Vi har också lagt till en ny inställning så att du kan anpassa beteendet för tips över dessa språk. Den här inställningen gäller inte för C# och C++ ännu. Om du vill aktivera Inlay-tips för dessa språk kan du använda den nya inställningen i Tools > Options > Text Editor > Alla språk > Inlay Hints. Du kan se det nya alternativet i följande bild.
Det finns tre olika värden för Inlay Hints.
- Always: Visa alltid Inlay Hints.
- När du trycker på Alt+F1: Visar endast inläggstips medan Alt och F1 trycks ned. Det här är standardvärdet.
- Aldrig: Inlay Tips visas aldrig.
För JavaScript och TypeScript finns det ytterligare en alternativsida för att konfigurera beteendet för Inlay-tips. Detta finns i Tools > Options > Text Editor > JavaScript/TypeScript > Advanced > General.
Dessa alternativ visas i bilden som följer.
Som standard är alla dessa alternativ inaktiverade. Du bör aktivera de tips som du är intresserad av att visa för JavaScript- och TypeScript-filer. I en framtida uppdatering kan vi ändra standardvärdena för dessa alternativ. I bilden nedan kan du se en JavaScript-fil som visar Inlay-tips.
I föregående bild är De inläggstips som visas de grå rutorna med
: number
för att ange typen av variabel.📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
delade HTTP-filer 📣
I HTTP-miljöfiler har vi lagt till stöd för att dela variabler mellan miljöer.
När du använder HTTP-filer i Visual Studio kan du definiera miljöer så att du kan skapa olika inställningar för API-testning. Tidigare var det inte möjligt att dela en variabel i dessa miljöer. Vi har lagt till stöd för en ny post,
$shared
, i miljöfilen som gör att du kan definiera standardvärden för variabler som är tillgängliga i alla miljöer.Tänk till exempel på miljöfilen (http-client.env.json) nedan.
{ "$shared": { "HostAddress": "https://localhost:7293" }, "dev": { "username": "sayedha" }, "dev2": { "username": "madsk" }, "staging": { "username": "staginuser", "HostAddress": "https://sayedrest.example.com" } }
Vi har definierat de delade värdena i
$shared
ovan som består av variabelnHostAddress
som är inställd pålocalhost:7293
.Av de tre definierade miljöerna har ingen utvecklingsmiljö angett värdet för
HostAddress
men mellanlagringen har ett värde för den.När du använder antingen
dev
- ellerdev2
-miljön kommer värdet förHostAddress
från$shared
eftersom dessa miljöer inte har något värde förHostAddress
. När du använder mellanlagringsmiljön anges värdet förHostAddress
tillhttps://sayedrest.example.com
.📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
Data
SQL-projekt i SDK-stil i SSDT-📣
Nu kan du använda projektfilformatet i SDK-stil i dina SQL Server Data Tools-projekt.
Den här uppdateringen lägger till SQL-projekt baserade på Microsoft.Build.Sql SDK, vilket ger plattformsoberoende stöd och förbättrade paketreferenser till SQL Server Data Tools-projekt (SSDT). Med mindre utförliga projektfiler och databasreferenser till NuGet-paket kan team samarbeta mer effektivt med stora databaser i ett enda projekt eller kompilera flera uppsättningar objekt från flera projekt.
Databasdistributioner från ett Microsoft.Build.Sql-projekt kan automatiseras i Windows- och Linux-miljöer där dotnet-verktyget Microsoft.SqlPackage publicerar byggartefakten (.dacpac) från SQL-projektet. Läs mer om förhandsversionen av SQL-projekt i SDK-stil och DevOps för SQL.
Microsoft.Build.Sql-projekt-SDK:t är öppen källkod och har utvecklats på GitHub.
Se till att installera den senaste SSDT-förhandsgranskningskomponenten i Visual Studio-installationsprogrammet för att använda SQL-projekt i SDK-stil i din lösning.
📣 Se funktionsbiljett för att dela din feedback och fortsätta konversationen.
C++
Ange C++-kommandoradsargument
Ett nytt sätt att ange kommandoradsargument direkt från verktygsfältet.
Ange snabbt kommandoradsargumenten för ditt C++-projekt med det nya Ange argument verktygsfältsobjekt. Med den här kombinationsrutan kan du ange kommandoradsargument direkt från verktygsfältet, så att du snabbt kan ändra argumenten. När du kör projektet skickas alla argument som anges i rutan.
Den här verktygsfältskomponenten visas som standard om du har Spelutveckling med C++ arbetsbelastning installerad. Om du inte ser det kan du lägga till det genom att högerklicka i verktygsfältet och välja Ange argument.
Obs! Den här funktionen är för närvarande endast tillgänglig för Unreal Engine-projekt. Allmänna C++-projekt kommer att stödjas i framtida versioner.
Visa förklaringar för Build Insights
Lär dig hur du använder varje flik i Build Insights via en nyligen tillagda länk till dokumentationen.
Nu kan du se en kort beskrivning av hur varje flik i Build Insights kan användas, tillsammans med en länk till dokumentationen för en detaljerad förklaring.
Justeringar av build insights-sökvägen
Få en tydligare vy över filen i Build Insights kan du se den fullständiga sökvägen vid hovring.
Vi har dolda fullständiga och relativa sökvägar för att minska oredan. Om du vill se fullständiga sökvägar hovrar du bara över filen. Du kommer också att se en ny filnamn kolumn för både filer och översättningsenheter, som visas som standard för att hjälpa dig att snabbt identifiera filer utan att parsa långa sökvägar.
Open Folder for Unreal Engine uproject
Ett nytt sätt att öppna ditt tumult.
Vi har lagt till ytterligare en startpunkt för att öppna upprojecten för Unreal Engine med stöd för Upproject i Visual Studio. Nu kan du öppna ditt tumult direkt från menyn File genom att välja Öppna > Unreal Engine-projekt.... Då öppnas projektet Unreal Engine i Visual Studio.
Mer information om hur du använder den här funktionen finns i Direktredigering av .uproject i Visual Studio.
förbättrad ändringssignatur
Nu kan du ändra signaturer med vårt förbättrade C++-gränssnitt.
Vi har uppdaterat gränssnittet För ändringssignatur för C++. Nu kan du lägga till, ta bort och ordna om parametrar i avsnittet parameterkonfiguration. Dessutom kan du ändra deras ordning genom att välja och dra dem till en ny position.
Åtkomstmetoderna förblir desamma: tryck på Ctrl+. för att utlösa menyn Snabbåtgärder och Omstrukturera och välja Ändra signatur.
De vanligaste användarrapporterade felkorrigeringarna
- C#-redigeraren kan inte hitta kontroller som definierats i xaml-fil
- GIT-kommando (synkronisering, hämtning, push- och grenlista saknas i statusfältet
- VSSDK/CPS/Extensibility: Bildinläsning i VS-tillägg via .imagemanifest är bruten i VS2022
- Backspace osv slutar ibland att fungera
- Resursutforskaren kan inte öppna resx-filer
- Återställ alla inställningar resulterar alltid i ett fel
- VS2022 17.10.0 Preview 7: Internt kompilatorfel
- Javascript-filer förlorar färgkodning efter 1 0000 kodrader
- Att använda std::format i en modul kräver att du inkluderar formatrubrik i .cpp filer som använder modulen
- C++-syntaxfel efter uppgradering till Visual Studio 17.11.0
- Det går inte att flytta ett kodblock upp och ned efter VS Update-
- CMake-cachegenerering på en fjärransluten Linux-värd misslyckas på en ctest-fråga
- fel i Azure DevOps-pipelines med VSTest@2
- Kan inte lägga till Apple-konto (VS 2022, Enterprise-konto)
📣 Se den fullständiga listan över alla användarrapporterade felkorrigeringar som gjorde det till den här versionen.
Kända problem
- Felet "Det gick inte att exportera certifikatet" uppstår när du försöker felsöka ett ASP.NET Core-webbprojekt med HTTPS aktiverat och med hjälp av WSL-felsökningsprofilen. Detta beror på Icke-bakåtkompatibel ändring: dev cert export skapar inte längre mappen.
Du kan kringgå detta genom att skapa mappen
%appdata%\ASP.NET\Https
innan du felsöker.
Version 17.12.3
släpptes 3 decemberrd, 2024
De vanligaste felkorrigeringarna | Från communityn |
---|---|
NuGet-fel efter uppgradering från VS v17.11.6 till v17.12 med .NET 9. | feedbackbegäran |
Privata Unity-meddelanden som felaktigt markerats som oanvända IDE0051. | feedbackbegäran |
Intellisense slutade fungera i Word C++-projektet. | feedbackbegäran |
Ett problem där tecken kan dupliceras när du skriver i en fil som innehåller ett inbäddat språk har åtgärdats. | feedbackbegäran |
Åtgärdat ett problem där matchning av sammanslagningskonflikter i .razor-filer och .cshtml-filer skulle resultera i ett tomt fönster. | feedbackbegäran |
Azure Devops Permalink från Visual Studio 2022 fungerar inte. | feedbackbegäran |
Åtgärdade ett problem där Visual Studio skulle krascha om miljövariabeln DOTNET_SYSTEM_GLOBALIZATION_INVARIANT var inställd på 1. | feedbackbegäran |
Fel vid start av prestandaprofiler för C++-projekt har åtgärdats. | feedbackbegäran |
Version 17.12.2
Släppte Novemeber 26th, 2024
De vanligaste felkorrigeringarna | Från communityn |
---|---|
C++ IntelliSense visar inte längre fel för projekt som har arbetat med IntelliSense i Visual Studio 17.11. | feedbackbegäran |
Copilot-indexeraren låser inte längre filer. | feedbackbegäran |
En kompilatorkrasch i C++/CLI-kod som riktar sig mot .NET Core och använder param-matriser har åtgärdats. | feedbackbegäran |
.NET för iOS/tvOS/macOS/macCatalyst viktig information | |
När Windows-uppdateringen KB5041580 kraschar Visual Studio tyst när ett sammanslagningsredigeringsfönster öppnas. | feedbackbegäran |
[LKG18] Vissa krympomslutna funktioner har ofullständig information om att varva ned i sina sekundära fragment. | feedbackbegäran |
Internt kompilatorfel C1001 för arm64-version. | feedbackbegäran |
SSDT kraschar med kritiskt fel som påträffades i VS17.12. | feedbackbegäran |
Version 17.12.1
Släppte Novemeber 19th, 2024
De vanligaste felkorrigeringarna | Från communityn |
---|---|
Problemet med syntaxfärg flimmer vid rullning via https://github.com/dotnet/roslyn/pull/75796 | |
Den här versionen innehåller uppdateringar för att upprätthålla efterlevnaden av internationella språklagar. |
Från oss alla i teamet, tack för att du valde Visual Studio. Om du har några frågor kan du kontakta oss på Twitter eller Developer Community.
Glad kodning!
Visual Studio-teamet
Not
Den här uppdateringen kan innehålla ny Programvara från Microsoft eller tredje part som är licensierad separat, enligt vad som anges i tredjepartsmeddelanden eller i dess tillhörande licens.