Visual Studio Icon Informacje o wersji dla programu Visual Studio 2019 w wersji 16.7


Developer Community | Wymagania systemowe | Zgodność | Kod dystrybucyjny | Postanowienia licencyjne | Blogi | Znane problemy w najnowszej wersji | Whats New in Visual Studio Docs


Kliknij przycisk, aby pobrać najnowszą wersję programu Visual Studio 2019. Aby uzyskać instrukcje dotyczące instalowania i aktualizowania programu Visual Studio 2019, zobacz informacje o aktualizowaniu programu Visual Studio 2019 do najnowszej wersji. Ponadto zobacz instrukcje na temat sposobu instalowania w trybie offline.

Community Download Button Professional Download Button Enterprise Download Button


Co nowego w programie Visual Studio 2019 w wersji 16.7

Ramy czasowe pomocy technicznej

Program Visual Studio 2019 w wersji 16.7 jest trzecim obsługiwanym planem bazowym obsługi dla programu Visual Studio 2019. Zachęcamy klientów korzystających z wersji Enterprise i Professional, którzy muszą wdrożyć długoterminowe, stabilne i bezpieczne środowisko programistyczne do standaryzacji do tej wersji. Jak wyjaśniono bardziej szczegółowo w naszych zasadach cyklu życia i pomocy technicznej,wersja 16.7 będzie obsługiwana z poprawkami i aktualizacjami zabezpieczeń do kwietnia 2022 r. Kwiecień 2022 r. to rok po wydaniu wersji 16.9 programu Visual Studio 2019, która została zadeklarowana jako czwarty plan bazowy obsługi.

Ponadto, ze względu na to, że dostępna jest wersja 16.7, wersja 16.4, która stanowiła ostatni plan bazowy obsługi, będzie obsługiwana jeszcze przez dodatkowe 12 miesięcy i od października 2021 r. nie będzie już objęta pomocą techniczną. Należy pamiętać, że wersje 16.5 i 16.6 również nie są już objęte pomocą techniczną. Te wersje pośrednie otrzymywały poprawki serwisowe tylko do momentu wydania następnej pomocniczej aktualizacji.

Najnowszą najbezpiecznszą wersję programu Visual Studio 2019 w wersji 16.7 można uzyskać w sekcji pobierania programu my.visualstudio.com katalogu firmy Microsoft.   Aby uzyskać więcej informacji o obsługiwanych planach bazowych programu Visual Studio, zapoznaj się z zasadami pomocy technicznej dla programu Visual Studio 2019.

Wydania programu Visual Studio 2019 w wersji 16.7

Informacje o starszych wersjach programu Visual Studio 2019

Blog dotyczący programu Visual Studio 2019

Blog dotyczący programu Visual Studio 2019 to oficjalne źródło informacji o produkcie pochodzących od zespołu inżynierów ds. programu Visual Studio. Szczegółowe informacje na temat wersji programu Visual Studio 2019 można znaleźć w następujących wpisach:


Zobacz tę pełną listę wszystkich elementów Community developer w wersji 16.7 Visual Studio 2019

Release Notes Icon Visual Studio 2019 w wersji 16.7.19 New release icon

wydany 14 września 2021 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.19

Zalecenia dotyczące zabezpieczeń

CVE-2021-26434 Visual Studio luka w zabezpieczeniach eskalacji uprawnień nieprawidłowego przypisania uprawnień

Luka w zabezpieczeniach umożliwiająca przypisanie uprawnień istnieje Visual Studio po zainstalowaniu programowania gier w języku C++ i wybraniu obciążenia Unreal Engine Installer. System jest narażony na lpe podczas instalacji tworzy katalog z dostępem do zapisu dla wszystkich użytkowników.

CVE-2021-36952 luka w zabezpieczeniach umożliwiająca zdalne wykonywanie kodu Visual Studio 36952

Luka w zabezpieczeniach umożliwiająca zdalne wykonanie kodu występuje w programie Visual Studio, gdy nieprawidłowo obsługuje on obiekty w pamięci. Osoba atakująca, która pomyślnie wykorzysta tę lukę, może uruchomić dowolny kod w kontekście bieżącego użytkownika.


Release Notes Icon Visual Studio 2019 w wersji 16.7.18

wydany 10 sierpnia 2021 r.

W tym wydaniu Visual Studio 2019 w wersji 16.7.18

  • Rozwiązano problem, który wpływał na wykonywanie polecenia aktualizacji w wierszu polecenia. Jeśli aktualizacja zakończy się niepowodzeniem za pierwszym razem, kolejne wydanie polecenia aktualizacji spowoduje teraz wznowienie poprzedniej operacji w miejscu, w którym została ona wyłączona.

Zalecenia dotyczące zabezpieczeń

CVE-2021-26423 Luka w zabezpieczeniach umożliwiająca atak typu "odmowa usługi" na programie .NET Core

Luka w zabezpieczeniach umożliwiająca atak typu "odmowa usługi" występuje, gdy aplikacje serwera .NET (Core) dostarczające punkty końcowe websocket mogą być wymykane w nieskończoną pętlę podczas próby odczytu pojedynczej ramki webSocket.

CVE-2021-34485 Luka w zabezpieczeniach umożliwiająca ujawnienie informacji na temat programu .NET Core

Luka w zabezpieczeniach umożliwiająca ujawnienie informacji występuje, gdy zrzuty utworzone przez narzędzie do zbierania zrzutów awaryjnego i zrzutów na żądanie są tworzone z globalnymi uprawnieniami do odczytu w systemach Linux i macOS.

CVE-2021-34532 Luka w zabezpieczeniach umożliwiająca ujawnienie ASP.NET Core informacji

Istnieje luka w zabezpieczeniach umożliwiająca ujawnienie informacji, w której token JWT jest rejestrowany, jeśli nie może być analizowany.


Release Notes Icon Visual Studio 2019 w wersji 16.7.17

wydany 13 lipca 2021 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.17

  • Zestaw SDK platformy .NET 3.1.411 wstawiony do Visual Studio 2019 r.

Release Notes Icon Visual Studio 2019 w wersji 16.7.16

wydany 8 czerwca 2021 r.

W tym wydaniu Visual Studio 2019 w wersji 16.7.16

Zalecenia dotyczące zabezpieczeń

CVE-2021-31957 ASP.NET odmowa usługi

Luka w zabezpieczeniach typu "odmowa usługi" występuje, ASP.NET Core nieprawidłowo obsługuje rozłączenie klienta.


Release Notes Icon Visual Studio 2019 w wersji 16.7.15

wydany 11 maja 2021 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.15

  • Rozwiązano problem powodujący niepowodzenie aktualizacji, gdy administrator tworzy nowy układ Visual Studio wdrażania aktualizacji. Aktualizacja maszyny klienckiej nie powiedzie się, ponieważ układ został przeniesiony do lokalizacji.

Zalecenia dotyczące zabezpieczeń

CVE-2021-27068 Możliwe RCE podczas python.exe w folderze zagnieżdżonych

Luka w zabezpieczeniach umożliwiająca zdalne wykonywanie kodu występuje podczas otwierania obszaru roboczego za pomocą kodu języka Python i zawiera python.exe w podfolderze skryptów.

CVE-2021-31204 Luka w zabezpieczeniach podniesienia uprawnień w programie .NET Core

Luka w zabezpieczeniach podniesienia uprawnień występuje na platformach .NET 5.0 i .NET Core 3.1, gdy użytkownik uruchamia pojedynczą aplikację pliku w systemach operacyjnych opartych na systemie Linux lub macOS.


Release Notes Icon Visual Studio 2019 w wersji 16.7.14

wydany 13 kwietnia 2021 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.14

  • Optymalizator błędnie usuwający aktywny kod
  • NuGet raportuje skrót zawartości pakietu i źródła pakietu podczas przywracania pakietów z normalnym poziomem szczegółowości danych wyjściowych
  • NuGet zapisze źródło pakietu w pliku .nupkg.metadata pakietu w folderze pakietów globalnych. Te dodatkowe informacje nie będą dostępne w przypadku istniejących pakietów w folderze pakietów globalnych. Można wyczyścić folder pakietów globalnych w celu zbierania informacji o źródle pakietu dla wszystkich pakietów.

Zalecenia dotyczące zabezpieczeń

CVE-2021-27064 luka w zabezpieczeniach podniesienia Instalator programu Visual Studio uprawnień

Luka w zabezpieczeniach umożliwiająca zdalne wykonywanie kodu występuje, Visual Studio instalator uruchamia klienta opinii w stanie podwyższonym poziomem uprawnień.

CVE-2021-28313 / CVE-2021-28321 / CVE-2021-28322 Luka w zabezpieczeniach podniesienia poziomu uprawnień standardowej usługi modułu zbierającego centrum diagnostyki

Luka w zabezpieczeniach dotycząca podniesienia uprawnień występuje, gdy standardowy moduł zbierający centrum diagnostyki nieprawidłowo obsługuje operacje na danych.


Release Notes Icon Visual Studio 2019 w wersji 16.7.13

wydany 9 marca 2021 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.13

Zalecenia dotyczące zabezpieczeń

CVE-2021-21300 Luka w zabezpieczeniach usługi Git Visual Studio zdalnego wykonywania kodu

Istnieje luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu, gdy program Visual Studio klonuje złośliwe repozytorium.

CVE-2021-26701 Luka w zabezpieczeniach umożliwiająca zdalne wykonywanie kodu na .NET Core

Na platformach .NET 5 i .NET Core istnieje luka w zabezpieczeniach zdalnego wykonywania kodu spowodowana tym, jak jest wykonywane kodowanie tekstu.


Release Notes Icon Visual Studio 2019 w wersji 16.7.12

wydany 9 lutego 2021 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.12


Release Notes Icon Visual Studio 2019 w wersji 16.7.11

wydany 9 lutego 2021 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.11

Zalecenia dotyczące zabezpieczeń

CVE-2021-1639 Luka w zabezpieczeniach umożliwiająca zdalne wykonywanie kodu w usłudze językowej TypeScript

Luka w zabezpieczeniach umożliwiająca zdalne wykonywanie kodu występuje, Visual Studio ładuje złośliwe repozytorium zawierające pliki kodu JavaScript lub TypeScript.

CVE-2021-1721 Luka w zabezpieczeniach umożliwiająca atak typu "odmowa usługi" na programie .NET Core

Luka w zabezpieczeniach umożliwiająca atak typu "odmowa usługi" występuje podczas tworzenia żądania internetowego HTTPS podczas tworzenia łańcucha certyfikatów X509.

CVE-2021-24112 Luka w zabezpieczeniach umożliwiająca zdalne wykonywanie kodu na komputerach .NET 5 i .NET Core

Luka w zabezpieczeniach umożliwiająca zdalne wykonywanie kodu występuje podczas rozsyłania metaplików, gdy interfejs graficzny nadal ma do niego odwołanie. Ta luka w zabezpieczeniach występuje tylko w systemach z systemem MacOS lub Linux.


Release Notes Icon Visual Studio 2019 w wersji 16.7.10

data wydania: 12 stycznia 2021 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.10

Zalecenia dotyczące zabezpieczeń

CVE-2021-1651 / CVE-2021-1680 Luka w zabezpieczeniach dotycząca podniesienia poziomu uprawnień standardowej usługi modułu zbierającego centrum diagnostyki

Luka w zabezpieczeniach dotycząca podniesienia uprawnień występuje, gdy standardowy moduł zbierający centrum diagnostyki nieprawidłowo obsługuje operacje na danych.

CVE-2020-26870 Luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu w instalatorze programu Visual Studio

Luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu występuje, gdy instalator programu Visual Studio próbuje wykazać złośliwy znacznik markdown.

CVE-2021-1723 Luka w zabezpieczeniach umożliwiająca atak typu „odmowa usługi” na platformie .NET Core i w programie Visual Studio

Luka w zabezpieczeniach umożliwiająca atak typu „odmowa usługi” występuje we wdrożeniu protokołu Kestrel.


Release Notes Icon Visual Studio 2019 w wersji 16.7.9

wydany 8 grudnia 2020 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.9

Zalecenia dotyczące zabezpieczeń

CVE-2020-17156 Luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu w programie Visual Studio

Istnieje luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu, gdy program Visual Studio klonuje złośliwe repozytorium.


Release Notes Icon Visual Studio 2019 w wersji 16.7.8

wydany 10 listopada 2020 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.8

Zalecenia dotyczące zabezpieczeń

CVE-2020-17100 Luka w zabezpieczeniach polegająca na nieuprawnionej modyfikacji w programie Visual Studio

Luka w zabezpieczeniach polegająca na nieuprawnionej modyfikacji występuje podczas tworzenia folderu python27 za pomocą dodatku Python Tools for Visual Studio. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby uruchamiać procesy w kontekście o podniesionych uprawnieniach.



Release Notes Icon Visual Studio 2019 w wersji 16.7.7

wydanie 27 października 2020 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.7


Release Notes Icon Visual Studio 2019 w wersji 16.7.6

wydany 13 października 2020 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.6


Release Notes Icon Visual Studio 2019 w wersji 16.7.5

wydany 29 września 2020 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.5


Release Notes Icon Visual Studio 2019 w wersji 16.7.4

wydany 21 września 2020 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.4

  • Dodaje obsługę programu Xcode 12.0 GM.
  • Dodaje obsługę ustawiania zestawu kolorów jako koloru akcentu w edytorze Info.plist.

Release Notes Icon Visual Studio 2019 w wersji 16.7.3

wydany 8 września 2020 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.3

Zalecenia dotyczące zabezpieczeń

CVE-2020-1130 Luka w zabezpieczeniach dotycząca podniesienia poziomu uprawnień standardowego modułu zbierającego centrum diagnostyki

Luka w zabezpieczeniach dotycząca podniesienia uprawnień występuje, gdy standardowy moduł zbierający centrum diagnostyki nieprawidłowo obsługuje operacje na danych. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby uruchamiać procesy w kontekście o podniesionych uprawnieniach.

CVE-2020-1133 Luka w zabezpieczeniach dotycząca podniesienia poziomu uprawnień standardowego modułu zbierającego centrum diagnostyki

Luka w zabezpieczeniach dotycząca podniesienia uprawnień występuje, gdy standardowy moduł zbierający centrum diagnostyki nieprawidłowo obsługuje operacje na plikach. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby uruchamiać procesy w kontekście o podniesionych uprawnieniach.

CVE-2020-16856 Luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu w programie Visual Studio

Luka w zabezpieczeniach umożliwiająca zdalne wykonanie kodu występuje w programie Visual Studio, gdy nieprawidłowo obsługuje on obiekty w pamięci. Osoba atakująca, która pomyślnie wykorzysta tę lukę, może uruchomić dowolny kod w kontekście bieżącego użytkownika.

CVE-2020-16874 Luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu w programie Visual Studio

Luka w zabezpieczeniach umożliwiająca zdalne wykonanie kodu występuje w programie Visual Studio, gdy nieprawidłowo obsługuje on obiekty w pamięci. Osoba atakująca, która pomyślnie wykorzysta tę lukę, może uruchomić dowolny kod w kontekście bieżącego użytkownika.

CVE-2020-1045 Luka w zabezpieczeniach dotycząca obejścia funkcji zabezpieczeń programu Microsoft ASP.NET Core

W programie Microsoft ASP.NET Core istnieje luka w zabezpieczeniach dotycząca obejścia funkcji zabezpieczeń, wynikająca ze sposobu analizowania zakodowanych nazw plików cookie. Analizator plików cookie programu ASP.NET Core dekoduje całe ciągi plików cookie, co potencjalnie umożliwia osobie atakującej ustawienie drugiego pliku cookie z nazwą zakodowaną procentowo.

Inne problemy rozwiązane w tej wersji

  • Usunięto awarię kompilatora w przypadku instrukcji lub wyrażeń switch korzystających z dopasowywania wzorców.
  • Przywrócono przepływ pracy „Zatrzymaj debugowanie (Shift+F5)” dla testowania jednostkowego przez zakończenie przebiegu testu.
  • Wprowadzono poprawkę zapobiegającą awarii programu VS podczas przełączania konfiguracji projektu, gdy projektant WinForms .NET Core ma niezapisane zmiany.
  • Nieobsługiwane wersje platformy .NET Core nie będą już ponownie instalowane podczas naprawy lub uaktualniania, jeśli zostały usunięte poza instalatorem programu VS.
  • Rozwiązano problem polegający na tym, że zależności zewnętrzne nie były dokładnie przeszukiwane przez funkcję Znajdź w plikach.
  • Ponownie wprowadzono przycisk „Zatwierdź...” w podmenu Git w menu kontekstowym Eksploratora rozwiązań.
  • Usunięto usterkę, która powodowała, że etykieta komentarzy zaewidencjonowania Kontroli wersji serwera Team Foundation była niewidoczna.
  • Rozwiązano problem powodujący awarię podczas korzystania z projektanta WinForm w projekcie csproj w stylu zestawu SDK z wieloma platformami docelowymi.
  • Rozwiązano problem polegający na tym, że element <d:Style.DataContext> zgłaszał błąd nieprawidłowych znaczników.

Najważniejsze problemy z forum Developer Community rozwiązane w programie Visual Studio 2019 w wersji 16.7.3


Release Notes Icon Visual Studio 2019 w wersji 16.7.2

wydany 18 sierpnia 2020 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.2

Najważniejsze problemy z forum Developer Community rozwiązane w programie Visual Studio 2019 w wersji 16.7.2


Release Notes Icon Visual Studio 2019 w wersji 16.7.1

wydany 11 sierpnia 2020 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.1

Najważniejsze problemy z forum Developer Community rozwiązane w programie Visual Studio 2019 w wersji 16.7.1


Release Notes Icon Visual Studio 2019 w wersji 16.7.0

wydany 5 sierpnia 2020 r.

W tym wydaniu programu Visual Studio 2019 w wersji 16.7.0

C++

  • Obsługa zdalna języka C++ obejmuje teraz szerszy zakres dystrybucji systemu Linux i powłok, w tym sh, csh, bash, tsch, ksh, zsh i dash. Można zastąpić wybór powłoki na potrzeby połączenia zdalnego, modyfikując nową właściwość „shell” przy użyciu programu ConnectionManager.exe. Obsługa została przetestowana zarówno z projektami systemu Linux opartymi na platformie MSBuild, jak i z projektami platformy CMake używanymi ze zdalnym systemem Linux lub podsystemem WSL.
  • Można teraz używać narzędzia Ninja (systemu kompilacji umożliwiającego bardzo szybką ocenę kompilacji przyrostowych), aby skrócić czas kompilacji przyrostowych dla projektów systemu Linux opartych na platformie MSBuild. Możesz wybrać tę funkcję, ustawiając właściwość „Włącz kompilację przyrostową” na wartość „Przy użyciu narzędzia Ninja” na stronie właściwości ogólnych. W zdalnym systemie Linux lub podsystemie WSL musi być zainstalowane narzędzi Ninja (ninja-build).
  • Zaimplementowano nowe funkcje biblioteki standardowej języka C++ 20. Aby uzyskać szczegółową listę, zobacz dziennik zmian biblioteki STL w witrynie GitHub.
  • Teraz można edytować i ustawiać domyślne połączenia zdalne SSH w menedżerze połączeń. Oznacza to, że można edytować istniejące połączenie zdalne (np. w przypadku zmiany jego adresu IP) i ustawiać domyślne połączenia do użycia w plikach CMakeSettings.json i launch.vs.json. Zdalne połączenia SSH umożliwiają tworzenie i debugowanie projektów języka C++ w zdalnym systemie Linux bezpośrednio z programu Visual Studio.
Edit remote connections in the Connection Manager
Edytowanie połączeń zdalnych w menedżerze połączeń
  • Ulepszono obsługę funkcji IntelliSense dla kompilatora clang w systemie Windows (clang-cl) w programie Visual Studio. Ścieżka dołączania kompilatora clang uwzględnia teraz biblioteki clang, ulepszono wyświetlanie zygzaków w edytorze podczas korzystania z biblioteki std oraz dodano obsługę języka C++ 2a w trybie clang.
  • Teraz można wypróbować funkcję podkreślania błędów kodu i wyświetlić więcej sugerowanych szybkich poprawek w projektach C++.  Włącz tę funkcję w obszarze Narzędzia > Opcje > Edytor tekstów > C/C++ > Eksperymentalne > ustaw wartość opcję „Wyłącz linter kodu eksperymentalnego” na wartość false. Więcej informacji znajduje się w blogu zespołu języka C++.
IntelliSense code linter
Linter kodu funkcji IntelliSense
  • Dodano cztery nowe reguły analizy kodu w celu uwzględnienia dodatkowych funkcji bezpieczeństwa w języku C++: C26817, C26818, C26819 i C26820.
  • Dodano wysokiej jakości obsługę debugowania projektów CMake w systemach zdalnych za pomocą programu gdbserver.
  • Można łatwo wykrywać błędy uszkodzeń pamięci dzięki eksperymentalnej implementacji elementu AddressSanitizer dla języka C++ w programie Visual Studio, która jest teraz dostępna dla projektów natywnych x64. Teraz jest też obsługiwane korzystanie ze środowisk uruchomieniowych debugowania (/MTd, /MDd, /LDd).
  • Funkcja IntelliSense obejmuje teraz podstawową obsługę pojęć, wyznaczonych inicjatorów i kilku innych funkcji języka C++20.
  • Pliki ixx i cppm są teraz rozpoznawane jako pliki języka C++ i będą tak traktowane przez funkcje wyróżniania składni i IntelliSense.

Dynamiczne definiowanie list odtwarzania

Teraz można definiować listy odtwarzania dynamicznie na podstawie projektu, klasy lub przestrzeni nazw. Oznacza to, że można skonfigurować listę odtwarzania w celu uwzględnienia wszystkiego w określonym projekcie/klasie/przestrzeni nazw. Każdy nowy test dodany do tej grupy zostanie automatycznie uwzględniony na liście odtwarzania.

  • Listę odtwarzania można utworzyć, klikając prawym przyciskiem myszy projekt, przestrzeń nazw lub grupowanie klas w eksploratorze testów.
Test Explorer: Create a playlist
Eksplorator testów: tworzenie listy odtwarzania
  • Aby edytować grupy uwzględnione na liście odtwarzania, kliknij przycisk edytowania na pasku narzędzi. Zostaną wyświetlone pola wyboru. Edytuj grupy zgodnie z potrzebami.
Test Explorer: Edit a playlist
Eksplorator testów: edytowanie listy odtwarzania
  • Te listy odtwarzania nie są statycznymi listami testów, lecz są aktualizowane dynamicznie na podstawie reguł. Jeśli chcesz lepiej zrozumieć, jakie reguły generują dynamiczną listę odtwarzania, zapisz plik listy odtwarzania na dysku za pomocą przycisku zapisywania i wyświetl reguły wygenerowane w kodzie XML.
PlayList file dynamic rule set
Dynamiczny zestaw reguł pliku listy odtwarzania
  • Nadal można uwzględniać/wykluczać poszczególne testy, a lista odtwarzania będzie mogła zaktualizować swoje reguły dynamiczne lub wrócić do śledzenia testów jako listy statycznej. Można też używać cech do definiowania grupy dynamicznej, bezpośrednio edytując plik XML listy odtwarzania.

Wydajność usługi Git

Włącz funkcję w wersji zapoznawczej „Nowe środowisko użytkownika usługi Git” w obszarze Narzędzia | Opcje | Środowisko, aby korzystać z tego środowiska.

  • Tworzenie nowego repozytorium Git z poziomu dowolnego folderu lub nowego folderu
  • Zapisywanie i zamykanie otwartego folderu lub rozwiązania przed rozpoczęciem nowej operacji klonowania
  • Przejrzyste wyświetlanie błędów zatwierdzania lub umieszczania w przechowalni w polu tekstowym zatwierdzania
  • Wyświetlanie gałęzi GIT w widoku drzewa w nowym oknie Repozytorium GIT i zarządzanie nimi
  • Przełączanie między grafami historii poszczególnych gałęzi oraz interakcja z nimi w oknie Repozytorium Git
  • Wyświetlanie przychodzących i wychodzących zatwierdzeń w oknie Repozytorium Git
  • Blog zespołu ds. wydajności usługi Git z dodatkowymi informacjami o najnowszych funkcjach
Manage branches and view history in a focused Git Repository window
Zarządzanie gałęziami i wyświetlanie historii w oknie Repozytorium GIT, które pozwala się na tym skoncentrować

Rozwiązywanie konfliktów scalania za pomocą edytora scalania zorientowanego na usługę Git przy użyciu:

  • Pasek informacyjny w plikach zawierający konflikty scalania, który monituje o otwarcie edytora scalania
  • Więcej informacji w tytułach i podpisach oraz bardziej uporządkowany edytor scalania
  • Różnice w konfliktach zapewniające wyrównywanie pasujących wierszy, pokazywanie różnic na poziomie wyrazów i wyświetlanie widocznych odstępów, gdy są one jedyną różnicą.
  • Dwukierunkowe scalanie dla konfliktów dodawania/dodawania na poziomie plików
  • Możliwość rozwiązywania wszystkich konfliktów w jedną lub drugą stronę jednym kliknięciem
  • Przełącznik umożliwiający skupianie się na samych konfliktach i ignorowanie różnic niepowodujących konfliktu
New Merge Editor Experience
Rozwiązywanie konfliktów scalania za pomocą edytora scalania

JavaScript/TypeScript

  • Implementacje uzupełniania i szybkich informacji zostały zaktualizowane w celu lepszej obsługi scenariuszy funkcji LiveShare.

Proces lokalny z platformą Kubernetes

Local Process with Kubernetes
Proces lokalny z platformą Kubernetes

Funkcja procesu lokalnego z użyciem platformy Kubernetes umożliwia pisanie, testowanie i debugowanie kodu .NET na deweloperskiej stacji roboczej przy zachowaniu połączenia klastra Kubernetes z resztą Twoich aplikacji lub usług. Łącząc deweloperską stację roboczą z klastrem, można wyeliminować konieczność ręcznego uruchamiania i konfigurowania zależnych usług na komputerze deweloperskim. Zmienne środowiskowe, parametry połączeń i woluminy z klastra są dostępne dla kodu mikrousług działającego lokalnie. Nie są potrzebne dodatkowe zasoby, takie jak manifesty Dockerfile lub Kubernetes. Można uruchamiać, debugować i testować kod platformy .NET w zwykły sposób.

Aby włączyć funkcję procesu lokalnego z użyciem platformy Kubernetes, przejdź do pozycji Narzędzia > Opcje > Środowisko > Funkcje w wersji zapoznawczej i wybierz pozycję „Włącz debugowanie lokalne dla usług platformy Kubernetes”.

Enable Preview Features
Włączanie funkcji w wersji zapoznawczej

W przypadku aplikacji konsoli dla platformy .NET wymagany jest dodatkowy krok. Zainstaluj pakiet NuGet „Microsoft.VisualStudio.Azure.Kubernetes.Tools.Targets”.

Produktywność platformy .NET

Jeśli operator pomijania został wprowadzony, ale nie ma żadnego efektu, jest wyświetlane ostrzeżenie oraz poprawka kodu. Dostępna jest także druga poprawka kodu, sugerująca prawidłowe wyrażenie negujące. Umieść kursor na operatorze pomijania. Naciśnij klawisze (Ctrl + . ), aby wywołać menu Szybkie akcje i operacje refaktoryzacji. Następnie wybierz jedną z opcji:

  • Aby całkowicie usunąć operator, wybierz pozycję Usuń operator (zachowuje semantykę) :
Code fix to remove suppression operator
Poprawka kodu w celu usunięcia operatora pomijania
  • Aby zanegować wyrażenie, wybierz pozycję Neguj wyrażenie (zmienia semantykę) :
Code fix to negate expression
Poprawka kodu w celu zanegowania wyrażenia
  • Możesz także zanegować wyrażenie przy użyciu nowego wzorca not w języku C# 9, jeśli jest dostępny w projekcie:
Code fix to negate expression using not
Poprawka kodu w celu zanegowania wyrażenia przy użyciu wzorca „not”

Można teraz generować właściwości podczas generowania konstruktora w typie. Umieść kursor na wystąpieniu. Naciśnij klawisze (Ctrl + . ), aby wywołać menu Szybkie akcje i operacje refaktoryzacji. Wybierz pozycję Generuj konstruktor w elemencie <QualifiedName> (z właściwościami) .

Generate properties when generating constructor
Generowanie właściwości podczas generowania konstruktora
  • W szybkich informacjach jest teraz wyświetlany identyfikator diagnostyczny wraz z linkiem Pomocy, przy użyciu którego można łatwo przejść do naszej dokumentacji, aby dowiedzieć się więcej o ostrzeżeniach i błędach w kodzie.
Quick Info Diagnostic ID and Help Link
Identyfikator diagnostyczny i link Pomocy w szybkich informacjach
  • Teraz jest dostępna szybka akcja w celu dodawania atrybutu wyświetlania debugera do klasy. Umożliwia to programowe przypinanie właściwości w debugerze w kodzie. Umieść kursor na nazwie klasy. Naciśnij klawisze (Ctrl+ . ), aby wywołać menu Szybkie akcje i operacje refaktoryzacji. Wybierz pozycję Dodaj atrybut „DebuggerDisplay” . Spowoduje to dodanie atrybutu wyświetlania debugera na początku klasy i wygenerowanie automatycznej metody zwracającej funkcję ToString(), którą można edytować w celu zwrócenia wartości właściwości do przypięcia w debugerze.
Add Debugger Display Attribute
Dodawanie atrybutu wyświetlania debugera
  • Teraz jest dostępna poprawka kodu dla przypadkowych przypisań lub porównań z tą samą zmienną. Umieść kursor na ostrzeżeniu. Naciśnij klawisze (Ctrl+ . ), aby wywołać menu Szybkie akcje i operacje refaktoryzacji. W przypadku przypadkowych przypisań wybierz pozycję Przypisz do <QualifiedName>.value. W celu przypadkowych porównań wybierz pozycję Porównaj z <QualifiedName>.value.
Accidental Assignments Code Fix
Poprawka kodu dla przypadkowych przypisań
Accidental Comparisons Code Fix
Poprawka kodu dla przypadkowych porównań
  • Teraz można generować operatory porównania dla typów implementujących interfejs IComparable. Umieść kursor wewnątrz klasy lub na interfejsie IComparable. Naciśnij klawisze (Ctrl+ . ), aby wywołać menu Szybkie akcje i operacje refaktoryzacji. Wybierz pozycję Generuj operatory porównania. Zostanie wygenerowany standardowy kod z operatorami porównania.
Generate Comparison Operators
Generowanie operatorów porównania
  • Podczas generowania elementu .Equals dla struktur można teraz generować operatory IEquatable. Istniała już refaktoryzacja do generowania elementów Equals i GetHashCode dla typów wartości. Teraz w przypadku struktur będzie automatycznie dodawany element IEquatable, a także operatory równości i nierówności. Umieść kursor wewnątrz struktury. Naciśnij klawisze (Ctrl+ . ), aby wywołać menu Szybkie akcje i operacje refaktoryzacji. Wybierz pozycję Generuj element Equals(object) .
Generate IEquatable Operators
Generowanie operatorów IEquatable
  • Teraz można tworzyć i przypisywać właściwości lub pola dla wszystkich nieużywanych parametrów konstruktora. Istniała już szybka akcja do wykonywania tej operacji na pojedynczym parametrze, ale teraz można wykonać ją jednocześnie dla wszystkich nieużywanych parametrów. Umieść kursor na dowolnym z pozostałych parametrów. Naciśnij klawisze (Ctrl+ . ), aby wywołać menu Szybkie akcje i operacje refaktoryzacji. Aby utworzyć i zainicjować właściwości, wybierz pozycję Utwórz i przypisz pozostałe jako właściwości. Aby utworzyć i zainicjować pola, wybierz pozycję Utwórz i przypisz pozostałe jako pola.
Create and Assign Remaining Fields
Tworzenie i przypisywanie pozostałych pól
Create and Assign Remaining Properties
Tworzenie i przypisywanie pozostałych właściwości
  • Teraz jest dostępne uzupełnianie funkcji IntelliSense w literałach ciągu DateTime i TimeSpan. Umieść kursor wewnątrz literału ciągu DateTime lub TimeSpan i naciśnij klawisze (Ctrl+spacja). Zobaczysz opcje uzupełniania oraz objaśnienie znaczenia poszczególnych znaków. Zostanie podany format daty i godziny, a także przykład.
IntelliSense Completion in DateTime and TimeSpan
Uzupełnianie funkcji IntelliSense w literałach ciągu DateTime i TimeSpan
  • Teraz można dodać parametr w oknie dialogowym Zmienianie sygnatury. Umieść kursor wewnątrz sygnatury metody. Naciśnij klawisze (Ctrl+ . ), aby wywołać menu Szybkie akcje i operacje refaktoryzacji. Wybierz pozycję Zmień sygnaturę. Zostanie otwarte następujące okno dialogowe, w którym można teraz wybrać pozycję Dodaj, aby dodać parametr. Po wybraniu pozycji Dodaj zostanie otwarte okno dialogowe Dodawanie parametru. Okno dialogowe Dodawanie parametru umożliwia dodanie nazwy typu i nazwy parametru. Można określić, że parametr jest wymagany lub jest opcjonalny z wartością domyślną. Następnie można dodać wartość w miejscu wywołania i wybrać nazwany argument dla tej wartości albo można wprowadzić zmienną TODO. Zmienna TODO umożliwia umieszczenie elementu TODO w kodzie, aby można było odwiedzać poszczególne błędy oraz przechodzić niezależnie do poszczególnych lokalizacji wywołań i decydować, co należy przekazać. W przypadku parametrów opcjonalnych można całkowicie pomijać lokalizację wywołania.
Change Signature Dialog
Okno dialogowe Zmienianie sygnatury
Add Parameter Dialog
Okno dialogowe Dodawanie parametru
  • Autorzy analizatorów mogą teraz używać elementów CompletionProvider dla uzupełnień funkcji IntelliSense w przypadku dostarczania swoich analizatorów przy użyciu narzędzia NuGet. Wcześniej autorzy bibliotek musieli tworzyć oddzielny element VSIX, ponieważ elementy CompletionProvider były dostępne tylko w elemencie VSIX. Teraz autorzy bibliotek mogą implementować uzupełnienia funkcji IntelliSense w pakiecie NuGet, który zawiera ich analizatory, i nie muszą robić tego osobno. Dostawcy uzupełniania zaimplementowani w pakietach NuGet będą też udostępniać sugestie specyficzne dla poszczególnych projektów i będą automatycznie działać w każdym środowisku IDE obsługującym tę funkcję.

Razor

Wypróbuj nowy, eksperymentalny edytor Razor z obsługą protokołu Language Server Protocol (LSP), który działa ze wszystkimi plikami Razor (cshtml/razor), wybierając funkcję w wersji zapoznawczej Włącz eksperymentalny edytor Razor.

Eksplorator testów

Do eksploratora testów dodano polecenia Uruchom/Debuguj wszystkie testy w widoku. Te polecenia zastępują polecenia Uruchom wszystkie testy i Debuguj wszystkie testy, które były wyświetlane w eksploratorze testów. Celem tej zmiany jest wyjaśnienie, że te polecenia uwzględniają filtry eksploratora testów, tak aby były uruchamiane tylko testy widoczne w oknie. Dotyczy to zarówno filtrów kolumn, jak i filtrów w polach wyszukiwania.

Test Explorer Run/Debug All Tests in View commands
Polecenia Uruchom/Debuguj wszystkie testy w eksploratorze testów

Polecenia Globalnie uruchom/debuguj wszystko będą teraz wyświetlane tylko w menu testów najwyższego poziomu. Nie są one już uwzględniane na pasku narzędzi eksploratora testów ani w menu kontekstowym żadnego widoku okna testów. W przypadku uruchamiania z eksploratora testów polecenie Analizuj pokrycie kodu dla wszystkich testów dotyczy teraz również widoków okna testów.

Klawisze skrótów:

  • Ctrl R, A — Uruchom wszystkie testy — polecenie globalne zawsze uruchamia wszystkie testy
  • Ctrl R, V — Uruchom wszystkie testy w widoku — polecenie prawidłowe tylko wtedy, gdy jest aktywne okno testów (eksplorator testów, lista odtwarzania, okno testowania jednostek na żywo)
  • Ctrl R, Ctrl A — Debuguj wszystkie testy — polecenie globalne zawsze debuguje wszystkie testy
  • Ctrl R, Ctrl V — Uruchom wszystkie testy w widoku — polecenie prawidłowe tylko wtedy, gdy jest aktywne okno testów (eksplorator testów, lista odtwarzania, okno testowania jednostek na żywo)

Debuger

Wyświetlanie zarządzanych obiektów COM za pośrednictwem wskaźników natywnych

Ta funkcja automatycznie dekoduje zarządzane obiekty COM, do których odwołują się wskaźniki natywne, co pozwala na pełną inspekcję wartości w oknie zmiennych lokalnych. Więcej informacji na ten temat możesz znaleźć tutaj w blogu programu Visual Studio.

Profiler

Nowe narzędzie liczników wydajności .NET

.NET Performance Counters Tool
Narzędzie liczników wydajności .NET

Wizualizuj liczniki dotnet bezpośrednio z poziomu profilera programu Visual Studio za pomocą narzędzia liczników wydajności .NET. Aby wypróbować narzędzie, wybierz pozycję Debugowanie -> Profiler wydajności i zaznacz opcję Narzędzie liczników wydajności .NET.

Xamarin

  • Wprowadzono poprawki kodu dla najczęstszych problemów napotykanych przez użytkowników pracujących z plikami układów systemu Android.
  • Środowisko wyboru szablonu zestawu narzędzi Xamarin.Forms ma odświeżony i bardziej przejrzysty wygląd, a w szablonach z oknem wysuwanym i z kartami jest teraz używana powłoka. Więcej informacji na temat powłoki znajdziesz tutaj. Jeśli z jakiegokolwiek powodu nie chcesz używać powłoki, wybierz szablon pusty.
New Xamarin.Forms template selection experience
Wybieranie szablonu zestawu narzędzi Xamarin.Forms

Narzędzia XAML (WPF, UWP i Xamarin.Forms)

Przeładowywanie kodu XAML na gorąco:

  • Ulepszenia paska narzędzi w aplikacji: Wprowadziliśmy kolejne udoskonalenia środowiska paska narzędzi w aplikacji w ramach przepływu pracy przeładowywania kodu XAML na gorąco dla platform WPF i UWP. Po zmianach pasek narzędzi jest krótszy, dzięki czemu nie zasłania uruchomionej aplikacji. Zmieniono też mechanizm zwijania: po kliknięciu zostanie najpierw zwinięty tekst Przeładowywanie kodu XAML na gorąco, a dopiero po drugim kliknięciu — cały pasek.

Projektant XAML:

  • Rozszerzona obsługa danych w czasie projektowania dla platform WPF i UWP: W tej wersji wprowadzamy nową funkcję danych w czasie projektowania dla deweloperów platform WPF .NET Core i UWP. Ta nowa możliwość rozszerzy bieżącą listę dostępnych właściwości czasu projektowania przy użyciu prefiksu d:. Będzie ona znajoma dla deweloperów korzystających z zestawu narzędzi Xamarin.Forms, ponieważ udostępnia taką samą metodę użycia prefiksu „d:” w celu wskazania właściwości, która ma być renderowana tylko w czasie projektowania i nigdy nie będzie kompilowana w uruchamianej aplikacji — co sprawia, że można bardzo bezpiecznie używać jej na potrzeby walidacji interfejsu użytkownika w czasie projektowania. W tej wersji obsługiwane są wszystkie wbudowane kontrolki podsystemu WPF i platformy UWP, a w przyszłych wersjach zaplanowano wprowadzenie obsługi kontrolek innych firm i kontrolek niestandardowych.
  • Przycisk odświeżenia w projektancie XAML: Dodaliśmy przycisk odświeżenia do projektanta XAML. Nowa ikona znajduje się w lewym dolnym rogu obok wskaźnika poziomu powiększenia. Akcja odświeżenia powoduje zresetowanie widoku projektanta, podobnie jak zamknięcie go i ponowne otwarcie, w rzadkich sytuacjach, gdy jest to wymagane w celu rozwiązania problemu z renderowaniem. Ta funkcja jest dostępna dla deweloperów platform WPF .NET Core i UWP.

Edytor kodu XAML:

  • Wizualizator kolorów: Wprowadziliśmy kolejne udoskonalenia nowego wizualizatora kolorów w edytorze kodu XAML dla projektów WPF .NET Core, WPF .NET Framework i Xamarin.Forms. W tej wersji dodaliśmy obsługę wizualizacji kolorów pochodzących z zasobów, które nie były obsługiwane w poprzedniej wersji zapoznawczej.
Inline Color Previews in XAML Code Editor
Śródwierszowy podgląd kolorów w edytorze kodu XAML

Pokazywanie elementów przybornika z pakietu NuGet bez odwołania do pakietu

Wielu autorów bibliotek kontrolek chce, aby kontrolki były widoczne w przyborniku nawet wtedy, gdy bieżący projekt nie odwołuje się jeszcze do biblioteki, ponieważ ułatwia to odnajdywanie. Dotychczas w zestawach SDK WPF platformy .NET Framework było to realizowane przy użyciu wpisów rejestru, ale nie obsługuje tego platforma .NET Core. W przypadku platformy WPF .NET Core przybornik można teraz wypełniać kontrolkami z plików VisualStudioToolsManifest.xml znalezionych w pakietach NuGet platformy WPF .NET Core w folderach rezerwowych NuGet. Aby uzyskać więcej informacji, zobacz dokumentację w repozytorium rozszerzalności projektanta XAML w witrynie GitHub.

Windows Forms

Projektant formularzy systemu Windows dla platformy .NET Core

Projektant formularzy systemu Windows dla platformy .NET Core jest teraz dostępny. Aby włączyć projektanta w programie Visual Studio, przejdź do pozycji Narzędzia > Opcje > Środowisko > Funkcje wersji zapoznawczej i wybierz opcję Użyj wersji zapoznawczej projektanta formularzy systemu Windows dla aplikacji .NET Core.

W tej wersji są teraz obsługiwane następujące kontrolki, a także inne ulepszenia:

  • Element UserControl i infrastruktura kontrolek niestandardowych
  • Element TableLayoutPanel
  • Podstawy obsługi kontrolek innych firm
  • Podstawy obsługi powiązań danych
  • Ulepszenia interakcji projektanta z elementem TableLayoutPanel

Poprawki błędów

Najważniejsze problemy rozwiązane w programie Visual Studio 2019 w wersji 16.7.0

  • Poprawiono błąd instalacji składnika dostawcy usługi WMI.
  • Naprawiono problem polegający na tym, że użytkownicy nie mogli wyświetlić postępu przebiegu testu, klikając lewy przycisk u dołu paska.
  • Poprawiono wydajność odkrywania dostępnych planów rozliczeniowych usługi Visual Studio Codespaces.
  • Podczas tworzenia wystąpienia usługi Visual Studio Codespaces zmieniono domyślny czas wstrzymania z 30 minut na 3 godziny.
  • Usunięto usterkę polegającą na tym, że okno zmian Git informuje użytkownika o przychodzących/wychodzących zatwierdzeniach, gdy w rzeczywistości takich nie ma.
  • Poprawiono stabilność narzędzi diagnostycznych profilera wydajności.
  • Rozwiązano problem polegający na tym, że rozszerzenie programu Visual Studio dla usługi Azure Sphere nie jest automatycznie aktualizowane z powodu drobnej niezgodności wersji. Dzięki tej poprawce usługa Azure Sphere będzie mogła być automatycznie aktualizowana po uruchomieniu automatycznego aktualizatora VSIX.

Zgłaszane na forum Developer Community


Znane problemy

Zobacz wszystkie otwarte problemy i dostępne obejścia w programie Visual Studio 2019, wybierając poniższy link.


Opinie i sugestie

Chcemy poznać Twoją opinię! Problemy możesz zgłaszać za pomocą opcji Zgłoś problem w prawym górnym rogu instalatora lub bezpośrednio w środowisku IDE programu Visual Studio. Program Feedback Icon znajduje się w prawym górnym rogu. Zgłaszanie sugestii dotyczących produktów i śledzenie problemów jest możliwe w społeczności deweloperów programu Visual Studio, gdzie można też zadawać pytania, znajdować odpowiedzi i proponować nowe funkcje. Możesz też uzyskać bezpłatną pomoc dotyczącą instalacji za pośrednictwem naszej pomocy technicznej przez czat na żywo.


Blogi

Skorzystaj ze szczegółowych informacji i zaleceń dostępnych w witrynie blogów dotyczących narzędzi programistycznych, aby być na bieżąco ze wszystkimi nowymi wersjami i zyskać dostęp do szczegółowych wpisów dotyczących szerokiego zakresu funkcji.


Historia informacji o wersji programu Visual Studio 2019

Więcej informacji na temat poprzednich wersji programu Visual Studio 2019 można znaleźć na stronie Historia informacji o wersji programu Visual Studio 2019.


Początek strony