Informacje o wersji 16.0 programu Visual Studio 2019
Developer Community | Wymagania | systemowe zgodność Dystrybucyjna | historia | wersji kodu | licencji | Blogi | Whats New w Visual Studio Docs
Uwaga
To nie jest najnowsza wersja programu Visual Studio. Aby pobrać najnowszą wersję, odwiedź witrynę programu Visual Studio .
Co nowego w programie Visual Studio 2019 w wersji 16.0
Ramy czasowe pomocy technicznej
Program Visual Studio 2019 w wersji 16.0 nie jest już obsługiwany.
Użytkownicy wersji Enterprise i Professional programu Visual Studio 2019 16.0 mieli dostęp do wsparcia i otrzymywali poprawki do luk w zabezpieczeniach do stycznia 2021 r. Te ramy czasowe zostały ustalone ze względu na to, że w grudniu 2019 r. jako następny plan bazowy obsługi do produktu Visual Studio 2019 został wyznaczony program Visual Studio 2019 w wersji 16.4. Aby uzyskać więcej informacji o obsługiwanych planach bazowych programu Visual Studio, zapoznaj się z zasadami pomocy technicznej dla programu Visual Studio 2019.
Zapoznaj się z najnowszą wersją informacji o wersji lub odwiedź witrynę programu Visual Studio , aby pobrać najnowszą obsługiwaną wersję programu Visual Studio 2019.
Wydania programu Visual Studio 2019 w wersji 16.0
- 12 stycznia 2021 r. — (wersja ostateczna) Visual Studio 2019 w wersji 16.0.22
- 8 grudnia 2020 r. — Visual Studio 2019 w wersji 16.0.21
- 10 listopada 2020 r. — Visual Studio 2019 w wersji 16.0.20
- 13 października 2020 r. — Visual Studio 2019 w wersji 16.0.19
- 8 września 2020 r. — Visual Studio 2019 w wersji 16.0.18
- 11 sierpnia 2020 r. — Visual Studio 2019 w wersji 16.0.17
- 14 lipca 2020 r. — Visual Studio 2019 w wersji 16.0.16
- 9 czerwca 2020 r. — Visual Studio 2019 w wersji 16.0.15
- 12 maja 2020 r. — Visual Studio 2019 w wersji 16.0.14
- 14 kwietnia 2020 r. — Visual Studio 2019 w wersji 16.0.13
- 10 marca 2020 r. — Visual Studio 2019 w wersji 16.0.12
- 14 stycznia 2020 r. — Visual Studio 2019 w wersji 16.0.11
- 10 grudnia 2019 r. — Visual Studio 2019 w wersji 16.0.10
- 15 października 2019 r. — Visual Studio 2019 w wersji 16.0.9
- 10 września 2019 r. — Visual Studio 2019 w wersji 16.0.8
- 13 sierpnia 2019 r. — Visual Studio 2019 w wersji 16.0.7
- 9 lipca 2019 r. — Visual Studio 2019 w wersji 16.0.6
- 11 czerwca 2019 r. — Visual Studio 2019 w wersji 16.0.5
- 14 maja 2019 r. — Visual Studio 2019 w wersji 16.0.4
- 30 kwietnia 2019 r. — Visual Studio 2019 w wersji 16.0.3
- 18 kwietnia 2019 r. — Visual Studio 2019 w wersji 16.0.2
- 9 kwietnia 2019 r. — Visual Studio 2019 w wersji 16.0.1
- 2 kwietnia 2019 r. — 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. Znajdziesz tam szczegółowe informacje na temat wersji programu Visual Studio 2019.
Visual Studio 2019 w wersji 16.0.22
data wydania: 12 stycznia 2020 r.
Zalecenia dotyczące zabezpieczeń w wersji 16.0.22
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 Instalator 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.
Visual Studio 2019 w wersji 16.0.21
wydany 8 grudnia 2020 r.
Zalecenia dotyczące zabezpieczeń w wersji 16.0.21
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.
Visual Studio 2019 w wersji 16.0.20
wydany 10 listopada 2020 r.
Zalecenia dotyczące zabezpieczeń w wersji 16.0.20
CVE-2020-17100 Luka w zabezpieczeniach dotycząca naruszenia 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.
Visual Studio 2019 w wersji 16.0.19
wydany 13 października 2020 r.
W tej wersji 16.0.19
- dodano do programu Visual Studio 2019 zestaw SDK .NET Core 2.1.616.
Visual Studio 2019 w wersji 16.0.18
wydany 8 września 2020 r.
Problem rozwiązany w wersji 16.0.18
- 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.
Zalecenia dotyczące zabezpieczeń w wersji 16.0.18
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ń platformy 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.
Visual Studio 2019 w wersji 16.0.17
wydany 11 sierpnia 2020 r.
Problem rozwiązany w wersji 16.0.17
Zalecenia dotyczące zabezpieczeń w wersji 16.0.17
CVE-2020-1597 ASP.NET luka w zabezpieczeniach dotycząca odmowy usługi
Luka w zabezpieczeniach typu „odmowa usługi” występuje na platformie ASP.NET Core, gdy nieprawidłowo obsługuje ona żądania internetowe. Tę lukę w zabezpieczeniach może wykorzystać atakujący i spowodować odmowę usługi dla aplikacji internetowej platformy ASP.NET Core. Lukę w zabezpieczeniach można wykorzystać zdalnie bez uwierzytelniania.
Visual Studio 2019 w wersji 16.0.16
wydany 14 lipca 2020 r.
Problemy rozwiązane w wersji 16.0.16
- Naprawiono regresję CodeGen kompilatora na potrzeby wywoływania funkcji wirtualnej przy użyciu wersji 15.9
- Naprawiono usterkę brakujących importów konsolidatora C++ podczas używania bibliotek Umbrella z rozróżnieniem wielkości liter w przyrostku nazwy biblioteki DLL.
- Naprawiono usterkę kompilatora ARM64 C++ polegającą na przywracaniu nieprawidłowych wartości po użyciu funkcji setjmp.
Zalecenia dotyczące zabezpieczeń w wersji 16.0.16
CVE-2020-1393 Luka w zabezpieczeniach dotycząca podniesienia poziomu uprawnień standardowej usługi modułu zbierającego centrum diagnostyki
Występuje luka w zabezpieczeniach dotycząca podniesienia poziomu uprawnień, gdy standardowa usługa modułu zbierającego centrum diagnostyki systemu Windows nie może poprawnie oczyścić danych wejściowych, co prowadzi do niebezpiecznego zachowania przy ładowaniu bibliotek.
CVE-2020-1416 Luka w zabezpieczeniach dotycząca podniesienia uprawnień w programie Visual Studio
Występuje luka w zabezpieczeniach dotycząca podniesienia poziomu uprawnień w programie Visual Studio, gdy ładuje on zależności oprogramowania.
CVE-2020-1147 Luka w zabezpieczeniach dotycząca odmowy usługi platformy .NET Core
Zdalny nieuwierzytelniony atakujący mógł wykorzystać tę lukę w zabezpieczeniach, wykonując specjalnie spreparowane żądania do aplikacji ASP.NET Core lub innej aplikacji, która analizuje niektóre typy kodu XML. Aktualizacja zabezpieczeń eliminuje tę lukę w zabezpieczeniach, ograniczając typy, które mogą być obecne w ładunku XML.
Visual Studio 2019 w wersji 16.0.15
wydany 9 czerwca 2020 r.
Problemy rozwiązane w wersji 16.0.15
Zalecenia dotyczące zabezpieczeń w wersji 16.0.15
CVE-2020-1108 / CVE-2020-1108.NET Core Odmowa usługi
Aby kompleksowo rozwiązać problem CVE-2020-1108, firma Microsoft udostępniła aktualizacje dla platform .NET Core 2.1 i .NET Core 3.1. Klienci korzystający z dowolnej z tych wersji platformy .NET Core powinni zainstalować najnowszą wersję platformy .NET Core. Zobacz Informacje o wersji, aby uzyskać numery najnowszych wersji oraz instrukcje dotyczące aktualizowania platformy .NET Core.
CVE-2020-1202 / CVE-2020-1203 Luka w zabezpieczeniach dotycząca podniesienia poziomu uprawnień standardowej usługi modułu zbierającego centrum diagnostyki
Luka w zabezpieczeniach dotycząca podniesienia poziomu uprawnień występuje, gdy standardowy moduł zbierający centrum diagnostyki lub standardowy moduł zbierający programu Visual Studio niepoprawnie obsługują obiekty w pamięci.
CVE-2020-1293 / CVE-2020-1278 / CVE-2020-1257 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 standardowa usługa modułu zbierającego centrum diagnostyki nieprawidłowo obsługuje operacje na plikach
Visual Studio 2019 w wersji 16.0.14
wydany 12 maja 2020 r.
Problemy rozwiązane w wersji 16.0.14
- Dodano zmianę, która umożliwia administratorom IT przedsiębiorstwa i inżynierom wdrażania konfigurowanie narzędzi, takich jak Microsoft Update Client i SCCM w celu określenia możliwości zastosowania aktualizacji programu VS2019 16.0 hostowanych w katalogu usługi Microsoft Update i w usługach WSUS.
Zalecenia dotyczące zabezpieczeń w wersji 16.0.14
CVE-2020-1108 Luka w zabezpieczeniach dotycząca odmowy usługi platformy .NET Core
Zdalny nieuwierzytelniony atakujący może wykorzystać tę lukę, wysyłając do aplikacji .NET Core specjalnie przygotowane żądania. Aktualizacja zabezpieczeń usuwa tę lukę w zabezpieczeniach, poprawiając sposób obsługi żądań internetowych w aplikacji internetowej .NET Core.
Visual Studio 2019 w wersji 16.0.13
wydany 14 kwietnia 2020 r.
Zalecenia dotyczące zabezpieczeń w wersji 16.0.13
CVE-2020-0899 Luka w zabezpieczeniach podniesienia uprawnień w programie Microsoft Visual Studio
W sytuacjach, gdy usługa aktualizatora programu Microsoft Visual Studio niepoprawnie obsługuje uprawnienia do pliku, występuje luka w zabezpieczeniach podniesienia uprawnień. Osoba atakująca, która pomyślnie wykorzysta tę lukę w zabezpieczeniach, może zastąpić dowolną zawartość pliku w kontekście zabezpieczeń systemu lokalnego.
CVE-2020-0900 Luka w zabezpieczeniach podniesienia uprawnień w usłudze instalatora rozszerzeń programu Visual Studio
Istnieje luka w zabezpieczeniach podniesienia uprawnień, gdy usługa instalatora rozszerzeń programu Visual Studio nieprawidłowo obsługuje operacje na plikach. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby usuwać pliki w dowolnych lokalizacjach z podwyższonym poziomem uprawnień.
CVE-2020-5260 Luka w zabezpieczeniach dotycząca przecieku poświadczeń w usłudze Git dla programu Visual Studio z powodu niewystarczającej weryfikacji adresów URL
Istnieje luka w zabezpieczeniach dotycząca przecieku poświadczeń, gdy specjalnie spreparowane adresy URL są analizowane i wysyłane do pomocników poświadczeń. Może to prowadzić do wysyłania poświadczeń do niewłaściwego hosta.
Visual Studio 2019 w wersji 16.0.12
wydany 10 marca 2020 r.
Problemy rozwiązane w wersji 16.0.12
- Plik vcruntime.h w programie VS 2019 (wersja zapoznawcze) powoduje ostrzeżenie RC4011
- Nowe opcje ograniczania ryzyka spectre w kompilatorze języka C++: /Qspectre-load & /Qspectre-load-cf na potrzeby spekulatywnego wzmacniania obciążenia.
Zalecenia dotyczące zabezpieczeń
CVE-2020-0793 i CVE-2020-0810 Luka w zabezpieczeniach dotycząca podniesienia poziomu uprawnień standardowego modułu zbierającego centrum diagnostyki
Luka w zabezpieczeniach dotycząca podniesienia poziomu uprawnień występuje, gdy standardowy moduł zbierający centrum diagnostyki niepoprawnie obsługuje operacje na plikach lub standardowa usługa modułu zbierającego centrum diagnostyki systemu Windows nie może poprawnie oczyścić danych wejściowych.
CVE-2020-0884 Luka w zabezpieczeniach umożliwiająca podszywanie się podczas tworzenia dodatku programu Outlook dla Internetu
CVE-2020-0789 Luka w zabezpieczeniach umożliwiająca odmowę usługi instalatora rozszerzenia programu Visual Studio
Visual Studio 2019 w wersji 16.0.11
wydany 14 stycznia 2020 r.
Zalecenia dotyczące zabezpieczeń
CVE-2020-0602 Luka w zabezpieczeniach umożliwiająca atak typu „odmowa usługi” na platformie ASP.NET Core
Zdalny nieuwierzytelniony atakujący może wykorzystać tę lukę, wysyłając do aplikacji ASP.NET Core specjalnie przygotowane żądania. Aktualizacja zabezpieczeń usuwa tę lukę w zabezpieczeniach, poprawiając sposób obsługi żądań internetowych w aplikacji internetowej ASP.NET Core.
CVE-2020-0603 Luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu na platformie ASP.NET Core
Zdalny nieuwierzytelniony atakujący może wykorzystać tę lukę, wysyłając do aplikacji ASP.NET Core specjalnie przygotowane żądania. Aktualizacja zabezpieczeń usuwa tę lukę w zabezpieczeniach, poprawiając sposób obsługi pamięci wewnętrznej przez aplikację internetową ASP.NET Core.
Visual Studio 2019 w wersji 16.0.10
wydany 10 grudnia 2019 r.
Problemy rozwiązane w wersji 16.0.10
Zalecenia dotyczące zabezpieczeń
CVE-2019-1349 Luka w zabezpieczeniach zdalnego wykonywania w narzędziu Git dla programu Visual Studio spowodowana zbyt łagodnymi ograniczeniami dla nazw modułów podrzędnych
Istnieje luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu, gdy w narzędziu Git dojdzie do kolizji nazw modułów podrzędnych dla katalogów równorzędnych modułów podrzędnych. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby zdalnie wykonać kod na maszynie docelowej. Aktualizacja zabezpieczeń eliminuje tę lukę w zabezpieczeniach, ponieważ pobierana nowa wersja narzędzia Git dla systemu Windows wymaga, aby katalog dla klona modułów podrzędnych był pusty.
CVE-2019-1350 Luka w zabezpieczeniach zdalnego wykonywania w narzędziu Git dla programu Visual Studio spowodowana niepoprawnym cytowaniem argumentów wiersza polecenia
Istnieje luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu, która występuje, gdy narzędzie Git interpretuje argumenty wiersza polecenia z pewnym cytowaniem podczas cyklicznego klonowania w połączeniu z adresami URL protokołu SSH. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby zdalnie wykonać kod na maszynie docelowej. Aktualizacja zabezpieczeń eliminuje tę lukę w zabezpieczeniach, ponieważ w pobieranej nowej wersji narzędzia Git dla systemu Windows usunięto ten problem.
CVE-2019-1351 Luka w zabezpieczeniach dotycząca dowolnego zastępowania plików w narzędziu Git dla programu Visual Studio, która występuje podczas klonowania w przypadku używania nazw dysków niebędących literami
W usłudze Git istnieje luka w zabezpieczeniach powodująca dowolne zastępowanie plików, gdy nazwy dysków niebędące literami są pomijane podczas sprawdzania zabezpieczeń w poleceniu git clone
. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby wykonywać operacje zapisu w dowolnych plikach na maszynie docelowej. Aktualizacja zabezpieczeń eliminuje tę lukę w zabezpieczeniach, ponieważ w pobieranej nowej wersji narzędzia Git dla systemu Windows usunięto ten problem.
CVE-2019-1352 Luka w zabezpieczeniach zdalnego wykonywania w narzędziu Git dla programu Visual Studio spowodowana nieznajomością alternatywnych strumieni danych NTFS
W usłudze Git istnieje luka w zabezpieczeniach umożliwiająca zdalne wykonywanie kodu w przypadku klonowania i zapisywania do katalogu .git/ za pośrednictwem alternatywnych strumieni danych NTFS. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby zdalnie wykonać kod na maszynie docelowej. Aktualizacja zabezpieczeń eliminuje tę lukę w zabezpieczeniach, ponieważ w pobieranej nowej wersji narzędzia Git dla systemu Windows wprowadzono świadomość istnienia alternatywnych strumieni danych.
CVE-2019-1354 Luka w zabezpieczeniach dotycząca dowolnego zastępowania plików w narzędziu Git dla programu Visual Studio, która występuje z powodu braku odmowy zapisania śledzonych plików zawierających ukośniki odwrotne
W usłudze Git istnieje luka w zabezpieczeniach powodująca dowolne zastępowanie plików, ponieważ wpisy drzewa zawierające ukośniki odwrotne i złośliwe linki symboliczne mogą powodować uszkodzenie drzewa roboczego. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby wykonywać operacje zapisu w dowolnych plikach na maszynie docelowej. Aktualizacja zabezpieczeń eliminuje tę lukę w zabezpieczeniach, ponieważ pobierana nowa wersja narzędzia Git dla systemu Windows nie zezwala na takie używanie ukośników odwrotnych.
CVE-2019-1387 Luka w zabezpieczeniach zdalnego wykonywania w narzędziu Git dla programu Visual Studio spowodowana zbyt łagodną weryfikacją nazw modułów podrzędnych w klonach cyklicznych
W usłudze Git istnieje luka w zabezpieczeniach umożliwiająca zdalne wykonywanie kodu w przypadku klonowania cyklicznego z modułami podrzędnymi. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby zdalnie wykonać kod na maszynie docelowej. Aktualizacja zabezpieczeń eliminuje tę lukę w zabezpieczeniach, ponieważ pobierana nowa wersja narzędzia Git dla systemu Windows zwiększa wymagania walidacji względem nazw modułów podrzędnych.
CVE-2019-1486 Luka w zabezpieczeniach dotycząca przekierowywania adresów URL w rozszerzeniu Live Share
W rozszerzeniu Live Share programu Visual Studio wykryto lukę w zabezpieczeniach umożliwiającą podszywanie się. Występuje ona, gdy gość połączony z sesją rozszerzenia Live Share zostanie przekierowany do dowolnego adresu URL określonego przez hosta sesji. Atakujący może pomyślnie wykorzystać tę lukę w zabezpieczeniach i spowodować, że komputer gościa otworzy przeglądarkę i przejdzie do złośliwego adresu URL bez wyraźnej zgody. Była to część funkcji „udostępnionego serwera” rozszerzenia Live Share, która zezwalała na automatyczne przekazywanie portów podczas aktywnej sesji Live Share. Najnowsza aktualizacja eliminuje tę lukę w zabezpieczeniach przez wyświetlanie monitu o zgodę gościa sesji Live Share na przejście do określonego przez hosta adresu URL.
Visual Studio 2019 w wersji 16.0.9
wydany 15 października 2019 r.
Zalecenia dotyczące zabezpieczeń
CVE-2019-1425 Luka w zabezpieczeniach dotycząca podniesienia uprawnień w pakietach NPM (opublikowana 12 listopada 2019 r.)
Istnieje luka w zabezpieczeniach dotycząca podniesienia uprawnień, gdy program Visual Studio nie może poprawnie zweryfikować linków stałych podczas wyodrębniania zarchiwizowanych plików. Te luki w zabezpieczeniach zostały wprowadzone przez pakiety NPM używane przez program Visual Studio, jak opisano w 2 następujących poradnikach NPM: npmjs.com/advisories/803 and npmjs.com/advisories/886. Zaktualizowane wersje tych pakietów NPM zostały udostępnione w tej wersji programu Visual Studio.
Visual Studio 2019 w wersji 16.0.8
wydany 10 września 2019 r.
Problemy rozwiązane w programie Visual Studio 2019 w wersji 16.0.8
- Zestaw nie jest zgodny z kodem dla funkcji
- Program Visual Studio przestaje odpowiadać podczas tworzenia nowego projektu SSIS
- Naprawiono zawieszanie się interfejsu użytkownika po dłuższym korzystaniu z edytora.
Zalecenia dotyczące zabezpieczeń
CVE-2019-1232 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 standardowa usługa modułu zbierającego centrum diagnostyki nieprawidłowo personifikuje pewne operacje na plikach. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby uzyskać podniesione przywileje. Atakujący z nieuprzywilejowanym dostępem do narażonego systemu może wykorzystać tę lukę w zabezpieczeniach. Aktualizacja zabezpieczeń usuwa lukę w zabezpieczeniach, zapewniając, że standardowa usługa modułu zbierającego centrum diagnostyki prawidłowo personifikuje operacje na plikach.
Visual Studio 2019 w wersji 16.0.7
wydany 13 sierpnia 2019 r.
Problemy rozwiązane w programie Visual Studio 2019 w wersji 16.0.7
- Naprawiono regresję wydajności podczas trafień i taktowania punktu przerwania.
- Naprawiono regresję wydajności podczas uruchamiania programu IntelliTrace.exe.
- Naprawiono usterkę powodującą awarię, gdy nie można nawiązać połączenia z serwerem TFS.
- Poprawka dotycząca błędu kompilacji HRESULT E_FAIL w niektórych projektach języka C++ podczas uaktualniania do wersji 16.0.1
Zalecenia dotyczące zabezpieczeń
CVE-2019-1211 Luka w zabezpieczeniach podniesienia uprawnień w narzędziu Git dla programu Visual Studio
W narzędziu Git dla programu Visual Studio występuje luka w zabezpieczeniach podniesienia uprawnień, która polega na tym, że pliki konfiguracji są nieprawidłowo analizowane. Osoba atakująca, która pomyślnie wykorzysta tę lukę, może wykonać kod w kontekście innego użytkownika lokalnego. Aby wykorzystać lukę w zabezpieczeniach, uwierzytelniona osoba atakująca musi zmodyfikować pliki konfiguracji narzędzia Git w systemie przed pełną instalacją aplikacji. Osoba atakująca powinna następnie przekonać innego użytkownika w systemie, aby wykonał określone polecenia narzędzia Git. Aktualizacja rozwiązuje problem, ponieważ zmienia uprawnienia wymagane do edytowania plików konfiguracji.
**CVE-2019-1301: Odmowa usługi w programie .NET Core
Luka w zabezpieczeniach typu „odmowa usługi” występuje na platformie .NET Core, gdy nieprawidłowo obsługuje ona żądania internetowe. Tę lukę w zabezpieczeniach może wykorzystać atakujący i spowodować odmowę usługi dla aplikacji internetowej platformy .NET Core. Lukę w zabezpieczeniach można wykorzystać zdalnie bez uwierzytelniania.
Aktualizacja usuwa tę lukę w zabezpieczeniach, poprawiając sposób obsługi żądań internetowych w aplikacji internetowej .NET Core.
Visual Studio 2019 w wersji 16.0.6
wydany 9 lipca 2019 r.
Problemy rozwiązane w programie Visual Studio 2019 w wersji 16.0.6
- Naprawiono obsługę narratora w komputerach z systemem Windows 10 w wersji 1903 lub platformą .NET 4.8.
Zalecenia dotyczące zabezpieczeń
CVE-2019-1075 Luka w zabezpieczeniach umożliwiająca podszywanie się na platformie ASP.NET Core
Dzisiaj zostały opublikowane aktualizacje platformy .NET Core, które uwzględniono w tej aktualizacji programu Visual Studio. W tej wersji rozwiązano problemy dotyczące zabezpieczeń i inne istotne problemy. Szczegóły można znaleźć w informacjach o wersji platformy .NET Core.
CVE-2019-1077 Luka w zabezpieczeniach dotycząca automatycznej aktualizacji rozszerzeń programu Visual Studio
Luka w zabezpieczeniach dotycząca podniesienia uprawnień występuje, gdy proces automatycznej aktualizacji rozszerzeń programu Visual Studio nieprawidłowo wykonuje pewne operacje na plikach. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby usuwać pliki w dowolnych lokalizacjach. Aby wykorzystać tę lukę w zabezpieczeniach, atakujący potrzebuje nieuprzywilejowanego dostępu do narażonego systemu. Aktualizacja zabezpieczeń usuwa lukę w zabezpieczeniach przez zabezpieczenie lokalizacji, w których automatyczna aktualizacja rozszerzeń programu Visual Studio wykonuje operacje na plikach.
CVE-2019-1113 Deserializacja pliku XOML Projektanta przepływu pracy umożliwia wykonywanie kodu
Plik XOML przywołujący niektóre typy może powodować wykonywanie losowego kodu, kiedy plik XOML jest otwierany w programie Visual Studio. Teraz wprowadzono ograniczenie dotyczące typów, których można używać w plikach XOML. Po otwarciu pliku XOML zawierającego jeden z nowo nieautoryzowanych typów jest wyświetlany komunikat wyjaśniający, że ten typ nie ma autoryzacji.
Aby uzyskać więcej informacji, zapoznaj się z artykułem https://support.microsoft.com/help/4512190/remote-code-execution-vulnerability-if-types-are-specified-in-xoml.
Visual Studio 2019 w wersji 16.0.5
wydany 11 czerwca 2019 r.
Problemy rozwiązane w programie Visual Studio 2019 w wersji 16.0.5
- Rozwiązano znany problem: Brak migawki utworzonej dla kodu natywnego języka C++ w narzędziu Użycie pamięci w oknie Narzędzia diagnostyczne podczas debugowania.
- Poprawiono wydajność podczas ładowania programu Visual Studio.
Visual Studio 2019 w wersji 16.0.4
wydany 14 maja 2019 r.
Problemy rozwiązane w programie Visual Studio 2019 w wersji 16.0.4
- Wielokrotny monit o dołączenie do usług IIS.
- Aplikacje WPF uszkodzone po aktualizacji FW 4.8.
- zainstalowanie języka typescript 3.3 powoduje wyłączenie kompilacji wersji 2.2.
- Nie można uruchomić debugera w przypadku dołączania wielu projektów startowych w programie Visual Studio 2019.
- Znany problem: Karta aplikacji stron właściwości projektu VB jest uszkodzona, gdy program .NET Framework 4.8 Developer Pack jest uszkodzony.
- Instalacja rozszerzeń programu Visual Studio może zakończyć się niepowodzeniem w przypadku próby zastąpienia podstawowych plików NuGet.
- W instalatorze offline brakuje elementu microsoft.diagnosticshub.dotnetobjectalloc.vsix.
Zalecenia dotyczące zabezpieczeń
CVE-2019-0727 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 standardowa usługa modułu zbierającego centrum diagnostyki nieprawidłowo wykonuje pewne operacje na plikach. Atakujący, któremu udałoby się wykorzystać tę lukę w zabezpieczeniach, mógłby usuwać pliki w dowolnych lokalizacjach. Aby wykorzystać tę lukę w zabezpieczeniach, atakujący potrzebuje nieuprzywilejowanego dostępu do narażonego systemu. Aktualizacja zabezpieczeń usuwa lukę w zabezpieczeniach przez zabezpieczenie lokalizacji, w których standardowy moduł zbierający centrum diagnostyki wykonuje operacje na plikach.
Visual Studio 2019 w wersji 16.0.3
wydany 30 kwietnia 2019 r.
Co nowego w programie Visual Studio 2019 w wersji 16.0.3
- Rozszerzenie Visual Studio Tools for Kubernetes obsługuje teraz najnowszą wersję usługi Azure Dev Spaces.
Problemy rozwiązane w programie Visual Studio 2019 w wersji 16.0.3
- Brak opcji Usuń w menu kontekstowym Eksploratora rozwiązań w projektach platformy Xamarin Forms dla systemu Android.
- Xamarin.Android: nie można wybrać platformy docelowej 28 w ustawieniach manifestu systemu Android.
- Nie można załadować pliku lub zestawu „Microsoft.VisualStudio.Web.PageInspector.Loader, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” lub jednej z jego zależności. System nie może odnaleźć określonego pliku.
- „Wystąpił błąd podczas uruchamiania wybranego generatora kodu” podczas próby utworzenia nowego widoku.
- Lista uprawnień systemu Android jest pusta.
- Brak ikon plików .axml w programie Visual Studio 2019.
- Ikony axml nie są wyświetlane.
- Instalacja rozszerzeń programu Visual Studio może zakończyć się niepowodzeniem w przypadku próby zastąpienia podstawowych plików NuGet.
- Instrukcja switch w języku C# z wyrażeniem stałym może powodować poważne błędy kompilatora.
Visual Studio 2019 w wersji 16.0.2
wydany 18 kwietnia 2019 r.
Problemy rozwiązane w programie Visual Studio 2019 w wersji 16.0.2
- Nazwa rozwiązania na pasku tytułu jest obcinana.
- Brak interpolacji w ostrzeżeniu podczas pakowania projektów usługi w chmurze.
- W programie Visual Studio nie jest już wyświetlany komunikat o błędzie podczas uruchamiania po zresetowaniu lub zaimportowaniu ustawień w niektórych przypadkach.
- Rozwiązano problemy z ułatwieniami dostępu w projektach usługi w chmurze polegające na tym, że nieprawidłowe dane wejściowe w oknie konfiguracji diagnostyki nie były odczytywane przez czytniki zawartości ekranu.
Visual Studio 2019 w wersji 16.0.1
wydany 9 kwietnia 2019 r.
Problemy rozwiązane w programie Visual Studio 2019 RC w wersji 16.0.1
- Dodano opcję dla platformy systemu Windows (UWP) podczas tworzenia nowego projektu Xamarin.Forms za pomocą szablonu projektu „Aplikacja mobilna (Xamarin.Forms)”.
- Tytuł okna Informacje w > programie Visual Studio 2019 nadal jest wyświetlany jako "RC" po uaktualnieniu.
- W ramach aktualizacji programu Visual Studio 2019 z wersji RC do wersji ogólnodostępnej skróty klawiaturowe wersji RC w programie Visual Studio są pozostawiane.
- Program Visual Studio 2019 w wersji zapoznawczej 1.1 nie umożliwia tworzenia formularza Zamarin platformy UWP.
- Błąd ładowania pakietów w programie Visual Studio 2019 po uaktualnieniu z wersji zapoznawczej 4.4 do wersji 16.0.
Visual Studio 2019
wydany 2 kwietnia 2019 r.
Podsumowanie nowości w programie Visual Studio 2019
Instalowanie
- Zwiększ swoją wydajność dzięki pobieraniu aktualizacji programu Visual Studio w tle.
- Steruj trybem instalowania aktualizacji programu Visual Studio.
IDE
- Współpracuj z innymi osobami przy użyciu zainstalowanej domyślnie funkcji Visual Studio Live Share. Obsługa dodatkowych języków C++, VB.NET i Razor zapewnia gościom widok rozwiązań i umożliwia udostępnianie różnic kontroli źródła.
- Otwieraj kod, nad którym ostatnio pracowano, lub rozpoczynaj od jednego z najczęściej używanych przepływów, takich jak klonowanie, otwieranie lub tworzenie projektu, za pośrednictwem nowego okna uruchamiania.
- Twórz nowe projekty za pomocą udoskonalonego środowiska wyszukiwania i filtrów przy użyciu nowej listy szablonów posortowanych według popularności.
- Zyskaj więcej miejsca w pionie na kod oraz zmodernizowany wygląd i działanie dzięki zestawowi nowych zmian wizualnych w powłoce.
- Wyświetlaj ostrzejszą wersję środowiska IDE niezależnie od konfiguracji ekranu i/lub skalowania dzięki lepszej obsłudze rozpoznawania monitorów.
- Używaj poprawionej funkcji wyszukiwania dla menu, poleceń, opcji i składników do zainstalowania w programie Visual Studio.
- Szybko poznawaj kondycję pliku kodu za pomocą wskaźnika dokumentu. Uruchamiaj i konfiguruj za pomocą oczyszczania kodu jednym kliknięciem z poziomu wskaźnika.
- W prosty sposób zarządzaj funkcjami w wersji zapoznawczej wybranymi na nowej stronie Funkcje wersji zapoznawczej w oknie dialogowym Opcje.
- Twórz nowe projekty, korzystając z ulepszeń wyszukiwania opartego na tagach i łatwo dostępnej listy „Ostatnie szablony projektu”.
- Twórz nowe elementy bezpośrednio z poziomu funkcji wyszukiwania programu Visual Studio i szybciej znajduj wyniki o lepszej zgodności.
- Uzyskuj na bieżąco ważne informacje, takie jak żądania programu Visual Studio Live Share, korzystając z nowego środowiska powiadomień.
- Zapisz kolekcję programów naprawiających oczyszczania kodu jako profil, aby łatwo wybierać programy naprawiające, które mają być uruchamiane podczas oczyszczania kodu.
- Wyzwalaj nowe poprawki kodu i refaktoryzacji .NET.
- Z łatwością konfiguruj projekty platformy .NET Core dzięki plikom projektu najwyższej jakości.
- Wyświetlaj stan rozszerzeń przy użyciu tagów Wersja zapoznawcza, Wersja płatna i Wersja próbna w oknie dialogowym Rozszerzenia i aktualizacje.
- Sprawdzaj i konfiguruj funkcje wersji zapoznawczej, które mają być aktywne, ponieważ ustawienia domyślne w tej wersji zapoznawczej zostały zresetowane.
- Zachowuj aktualność rozszerzeń, wykluczając interfejsy API okna testów, które zostały oznaczone w tej wersji jako przestarzałe.
- Loguj się do hostowanych repozytoriów usługi Azure DevOps, przeglądaj je i za pomocą jednego kliknięcia klonuj je lub łącz się z nimi za pośrednictwem okna uruchamiania.
- Instaluj rozszerzenia dla innych hostów kontroli źródła, aby wyświetlać repozytoria należące do Ciebie i Twojej organizacji.
- Korzystaj z ulepszonego środowiska motywu Niebieski, w którym uwzględniono opinie użytkowników, zmniejszając jasność, zwiększając ogólny kontrast i rozwiązując inne problemy z użytecznością.
- Stosuj preferencje stylu kodu z wiersza polecenia za pomocą globalnego narzędzia dotnet format.
- Programy MSBuild i Visual Studio są teraz przeznaczone domyślnie dla platformy .NET Framework 4.7.2.
- Usunęliśmy z Eksploratora serwera funkcje związane z usługą Azure App Service. Zamiast nich dostępne są ich odpowiedniki w Eksploratorze chmury.
Wydajność
- Przejmij kontrolę nad sposobem ładowania rozwiązania przy użyciu nowych ulepszeń wydajności programu Visual Studio, które wpływają na szybkość przechodzenia krok po kroku, szybkość przełączania gałęzi itd.
- Zobacz postęp ładowania rozwiązania w centrum stanu zadań.
- Wybieraj, które projekty do załadowania w rozwiązaniu są otwierane za pomocą plików filtru rozwiązania.
- Popraw wydajność wpisywania dzięki ograniczeniu wpływu składników pomocniczych.
- Przełączaj nową opcję wyłączania przywracania stanu hierarchii projektu i stanu okna narzędzia.
- Poznaj nowy skrót dla funkcji wyboru kompilacji i szybko kompiluj wszystko w narzędziu CMake za pomocą nowego polecenia Kompiluj wszystko.
- Szybciej twórz kod dzięki zwiększonej wydajności funkcji IntelliSense dla plików języka C++ w projektach CMake.
- Ładuj większe rozwiązania platformy .NET Core i ciesz się z mniejszego zużycia pamięci podczas długotrwałej pracy nad nimi.
- Szybko ładuj zależności projektu za pomocą nowego polecenia menu kontekstowego projektu.
- Wyświetlaj wskazówki dotyczące wydajności w centrum wydajności.
Debugowanie ogólne i diagnostyka
- Wyszukuj słowa kluczowe w oknach Wyrażenie kontrolne, Automatyczne i Zmienne lokalne podczas debugowania, aby zwiększyć możliwości znajdowania obiektów lub wartości.
- Wyświetlaj listę rozwijaną specyfikatorów formatu w oknach Wyrażenie kontrolne, Automatyczne i Zmienne lokalne podczas inspekcji danych.
- Używaj niestandardowego wizualizatora, który teraz jest zgodny z platformą .NET Core.
- Debuguj bardzo duże aplikacje z dużą liczbą modułów i plików PDB.
- Uruchamiaj przeglądarkę Google Chrome z niestandardowymi argumentami i debuguj aplikacje JavaScript w środowisku IDE programu Visual Studio.
- Używaj narzędzi wyróżniania ścieżki aktywnej dla procesora CPU i przydzielania obiektów DotNet w Profilerze wydajności.
- Przerwij, gdy wartość właściwości określonego obiektu zmienia się w aplikacjach platformy .NET Core 3.0+ przy użyciu punktów przerwania danych, czyli funkcji, która pierwotnie była wyłączna na język C++.
- Od wersji zapoznawczej 1 zaktualizowaliśmy interfejs użytkownika wyszukiwania w oknach Automatyczne, Lokalne i Wyrażenie kontrolne, upraszczając go. Funkcja Wyszukaj głębiej jest teraz listą rozwijaną umożliwiającą szybkie wybieranie głębokości początkowego wyszukiwania i kolejnych wyszukiwań.
Kontrola źródła i program Team Explorer
- Tymczasowo przechowuj zmiany w celu pracy nad innym zadaniem dzięki obsłudze narzędzi Git do przechowywania w programie Team Explorer.
- Wypróbuj dostępne w portalu Visual Studio Market Place opcjonalne rozszerzenie Żądania ściągnięcia dla programu Visual Studio, które integruje przeglądy żądań ściągnięcia w programie Visual Studio.
- Używaj nowego środowiska elementów roboczych usługi Azure DevOps, które koncentruje się na przepływach pracy dla deweloperów, w tym specyficznych dla użytkownika widoków elementów roboczych, tworzeniu gałęzi z elementu roboczego, wyszukiwaniu elementów roboczych za pomocą #wzmianek i wbudowanym edytowaniu.
Rozszerzalność
- Używaj pojedynczego, ujednoliconego zestawu Visual Studio SDK w pakiecie NuGet Microsoft.VisualStudio.SDK.
- Korzystaj z zalet naszej aktualizacji projektu VSIX, aby uwzględnić pakiet AsyncPackage.
- Eksperymentuj z dodanym przez nas nowym szablonem Pusty projekt VSIX.
- Informacja o tym, czy rozszerzenie jest bezpłatne, płatne, czy w wersji próbnej, jest teraz wyświetlane w oknie dialogowym Rozszerzenia i aktualizacje.
Języki programowania
C#
Sprawdź wersję zapoznawczą funkcji języka 8.0, które od teraz obsługuje kompilator języka C#, na przykład:
- Typy referencyjne dopuszczane do wartości null: gdy funkcja jest włączona (na przykład z
#nullable enable
lub na poziomie projektu z<NullableContextOptions>enable</NullableContextOptions>
), typy odwołań są traktowane jako dopuszczane wartości null, jeśli są oznaczone?
jako , i jako niepuste w przeciwnym razie. Kompilator analizuje, gdzie następuje przepływ wartości null i zwraca ostrzeżenia na temat potencjalnie niebezpiecznego użycia. switch
wyrażenia: oferujeswitch
semantyka przypominająca semantykę w kontekście wyrażenia.- Dopasowywanie wzorca cyklicznego: Nowe wzorce umożliwiają testowanie pól/właściwości i elementów pozycyjnych (z krotki lub dekonstrukcji).
- Obsługa typów
Range
iIndex
używanych w usłudze CoreFX na potrzeby tworzenia wycinków, w tym składni literałux..y
dla zakresów. - Asynchroniczne strumienie reprezentowane przez element
IAsyncEnumerable<T>
mogą być wyliczane w sposób asynchroniczny za pomocą poleceniaawait foreach
i tworzone za pomocą metod iteratorówasync IAsyncEnumerable<T>
. using
deklaracje: Usuwaj na końcu bieżącego bloku bez zwiększania poziomu zagnieżdżania. Strukturyref
można dodawać przy użyciu operacji dispose, wdrażając publiczną metodęDispose()
.static
funkcje lokalne: funkcje lokalne oznaczone jako niestatic
mogą odwoływać się do zmiennych ani odwoływaćthis
się do otaczających funkcji.- Funkcje lokalne i wyrażenia lambda mogą od teraz deklarować parametry i zmienne lokalne, które naśladują nazwy zmiennych funkcji otaczającej.
- Przypisanie łączące wartości null: element
x ??= y;
przypisuje wartośćy
do elementux
, wyłącznie jeśli elementx
miał wartośćnull
.
Więcej informacji znajduje się w omówieniu języka C# w wersji 8.0 opracowanym przez użytkownika Mads.
Zapoznaj się ze stanem funkcji języka C# oraz istotnymi zmianami, aby uzyskać więcej informacji.
Ponadto możesz domyślnie używać nowszych funkcji języka C# w programie Visual Studio.
C++
- Oszczędzaj czas podczas pisania kodu w językach C++ i XAML, korzystając z opcjonalnego rozszerzenia Visual Studio IntelliCode, które oferuje rekomendacje od sztucznej inteligencji dotyczące kodu.
- Korzystaj z ostrzeżeń analizy kodu w edytorze. Analiza kodu działa automatycznie w tle, a ostrzeżenia są wyświetlane jako zielone podkreślenia.
- Wypróbuj nowy pasek szablonów, który korzysta z interfejsu użytkownika okna podglądu i obsługuje szablony zagnieżdżone.
- Uruchom nową, zaktualizowaną implementację narzędzia sprawdzania profilu przez cały okres istnienia w języku C++.
- Konfiguruj projekty CMake za pomocą nowego Edytora ustawień narzędzia CMake, który stanowi alternatywę dla pliku CMakeSettings.json.
- Wypróbuj liczne ulepszenia zaplecza, takie jak wektoryzacja SIMD w programie OpenMP, przyspieszenia czasu łączenia i bardziej agresywne wbudowywanie.
- Otwieraj istniejące pamięci podręczne narzędzia CMake generowane przez narzędzia zewnętrzne, takie jak CMakeGUI czy dostosowane systemy metakompilacji.
- Ulepsz analizę dzięki opcji /Qspectre ułatwiającej ograniczenie ryzyka z powodu wariantu 1 luki Spectre (CVE-2017-5753). Więcej informacji zawiera wpis w blogu zespołu Visual C++.
- Dzięki nowemu menu rozwijanemu Ostatnio używane na pasku szablonu funkcji IntelliSense dla szablonów możesz szybko przełączać się pomiędzy poprzednimi przykładowymi argumentami.
F#
- Język F# w wersji 4.6 jest dostępny wraz z innymi ulepszeniami kompilatora.
- Ulepszenia wydajności większych rozwiązań i różne poprawki usterek dla języka F# i jego narzędzi.
- Dowiedz się więcej na temat osiągnięć uczestników projektu open source w zakresie ulepszania języka F# i jego narzędzi.
JavaScript/TypeScript
- Debuguj testy jednostkowe w projektach środowiska Node.js.
- Korzystaj z dodatkowej pomocy dla użytkowników, którzy kompilują projekty TypeScript z poziomu pakietów NuGet i npm.
Python
- W prosty sposób dodawaj środowiska wirtualne i środowiska conda języka Python przy użyciu okna dialogowego Dodaj środowisko języka Python.
- Pracuj z większą łatwością w środowiskach języka Python, korzystając między innymi z ulepszonej obsługi obszarów roboczych Open Folder przy użyciu nowego paska narzędzi selektora środowiska Python.
- Twórz sesje rozszerzenia Visual Studio Live Share i pracuj nad kodem w języku Python wspólnie z innymi użytkownikami programu Visual Studio.
Technologie internetowe
- Korzystaj z zalet dodatkowej pomocy podczas pracy z projektami .NET Core 3.0.
- Wypróbuj profilowanie procesora CPU na platformie ASP.NET.
- Używaj debugera migawek dla aplikacji internetowych platformy .NET uruchomionych na maszynach wirtualnych, w zestawach skalowania maszyn wirtualnych i w usłudze Azure Kubernetes Service.
- Twórz aplikacje kontenera dla platformy Kubernetes przy użyciu narzędzi platformy Kubernetes w programie Visual Studio
- Korzystaj z ulepszeń środowiska elementów roboczych usługi Azure DevOps, które zawierają wbudowaną obsługę przypisywania elementów roboczych i ulepszone środowisko #wzmianek.
- Pracuj z większą łatwością z plikami projektów i korzystaj z lepszej aplikacji konsoli dla narzędzi .NET Core.
- Korzystaj z ulepszeń podsumowania profilu publikowania dla wszystkich aplikacji. Ponadto po opublikowaniu aplikacji w usłudze Azure App Service dostępna jest teraz nowa sekcja o nazwie Zależności.
- Ulepszenia wizualne podczas tworzenia nowej aplikacji platformy ASP.NET
- Ponowne podawanie poświadczeń publikowania dla istniejącego profilu publikowania usługi Azure Functions
Narzędzia kontenerów
- Używaj bardziej usprawnionego pojedynczego projektu do konteneryzowania i debugowania.
- Korzystaj z dodatkowej obsługi debugowania Alpine i dodatkowych obrazów podstawowych.
Tworzenie aplikacji mobilnych w środowisku Xamarin
- Rozpocznij pracę szybciej dzięki zmniejszonemu rozmiarowi pakietu roboczego platformy Xamarin i zwiększonej wydajności tworzenia nowych projektów.
- Wyświetlaj bardziej szczegółowe informacje na temat postępu kompilacji.
- Używaj rozszerzenia IntelliCode z językiem XAML platformy Xamarin.Forms.
- Wyświetlaj podgląd kodu XAML bez wcześniejszego kompilowania projektu przy użyciu nowego trybu Basic Preview (Podgląd podstawowy) w programie Xamarin.Forms Previewer.
- Wyświetlaj podgląd kodu XAML zestawu Xamarin.Forms na różnych urządzeniach przy użyciu nowego menu rozwijanego urządzeń w programie Xamarin.Forms Previewer.
- Wypróbuj nowe kontrolki panelu właściwości interfejsu Xamarin.Forms.
- Używaj nowo dodanego szablonu Shell dla zestawu narzędzi Xamarin.Forms.
- Wypróbuj ulepszenia wydajności kompilacji początkowej i przyrostowej platformy Xamarin.Android.
- Twórz nowe emulatory systemu Android przy użyciu menu elementu docelowego wdrażania.
- Skróć czas kompilacji dzięki naszym ulepszeniom kompilacji na platformie Xamarin.Android.
- Korzystaj z rozszerzonego szybkiego wdrażania i obsługi narzędzi d8/r8 dla platformy Xamarin.Android.
- Korzystaj z zalet rozszerzonej produktywności programu Xamarin.Android Designer.
- Wypróbuj nasze ulepszenia narzędzia Xamarin.Android Designer z początkową obsługą układów ograniczeń.
- Zwiększaj produktywność w programie Xamarin.Android Designer, korzystając z funkcji Przejdź do definicji oraz rozszerzonej funkcji IntelliSense dla języka XML/automatycznego uzupełniania dla plików zasobów systemu Android.
Platforma uniwersalna systemu Windows (UWP)
- Zachowuj komentarze, odstępy, przestrzenie nazw i wszelkie pozostałe zmiany tekstu podczas wprowadzania zmian przy użyciu projektanta. Projektant manifestu pakietu wiernie odzwierciedla teraz zmiany kodu XML w pliku Package.appxmanifest.
- Użyj projektu Pakiet aplikacji systemu Windows do celów tworzenia pakietów MSIX przy użyciu projektów .NET Core.
- Użyj kreatora tworzenia pakietów, który umożliwia bezpośrednie przesyłanie do sklepu Microsoft Store.
- Wdrażanie na urządzeniach z systemem Windows Mobile nie jest już obsługiwane w programie Visual Studio 2019. Próba wdrożenia na urządzeniu z systemem Windows 10 Mobile spowoduje wyświetlenie błędu „Wdrażanie na urządzeniach z systemem Windows Mobile nie jest obsługiwane w programie Visual Studio 2019”. Jeśli musisz kontynuować pracę nad aplikacją dla urządzeń z systemem Windows 10 Mobile, nadal używaj programu Visual Studio 2017.
Narzędzia debugowania kodu XAML:
- Funkcja Edytuj i kontynuuj języka XAML obsługuje teraz funkcję x:bind (UWP): funkcja edycji i kontynuowania języka XAML obsługuje teraz edytowanie powiązań danych utworzonych za pomocą elementu x:bind dla ścieżek zawierających właściwości publiczne, nazwę elementu, ścieżki właściwości indeksowanych (kolekcji), dołączone właściwości i właściwości rzutowania. Inne zmiany nie są obsługiwane. To ulepszenie jest dostępne dla wszystkich aplikacji, dla których minimalnych i maksymalnych wersji elementem docelowym jest zestaw SDK systemu Windows 10 w wersji 1809 (kompilacja 10.0.17763) lub nowszy. (Uwaga: Edytuj i kontynuuj XAML jest teraz znany jako XAML Przeładowywanie na gorąco począwszy od programu Visual Studio 2019 Update 2+).
SQL Server Data Tools
- Sprawdź zaktualizowane narzędzia SSDT oraz DacFX, które teraz obsługują sortowanie plików UTF-8.
Szczegółowe informacje o nowościach w programie Visual Studio 2019
Instalowanie
- Teraz możesz wybrać sposób instalowania aktualizacji programu Visual Studio. Domyślny tryb „Pobierz wszystko, a następnie zainstaluj” pozwala korzystać z programu Visual Studio podczas pobierania aktualizacji. Pamiętaj, że jeśli wybierzesz pozycję „Pobierz wszystko, a następnie zainstaluj”, musisz zakończyć instalację przez otwarcie Instalatora programu Visual Studio i wybranie pozycji Kontynuuj.
- Aktualizacje programu Visual Studio są teraz pobierane w tle. Pobieranie odbywa się, gdy komputer jest bezczynny. Po zakończeniu pobierania w programie Visual Studio jest wyświetlane powiadomienie o tym, że pobrane pliki są gotowe do zainstalowania.
- Teraz możesz kontrolować tryb instalacji aktualizacji i określić, czy pobierać aktualizacje, czy nie za pomocą menu Opcje narzędzi>, zmieniając ustawienia na stronie Aktualizacje produktów.
Okno uruchamiania
Nowe okno uruchamiania zapewnia zoptymalizowane środowisko uruchamiania, które pozwala szybko uzyskać dostęp do kodu po uruchomieniu programu Visual Studio.
- Wyświetlaj ostatnie projekty i foldery oraz otwieraj je za pomocą jednego kliknięcia. Przypinanie i usuwanie elementów z listy za pomocą menu kontekstowego.
- Klonowanie i wyewidencjonowywanie kodu przy użyciu dowolnego publicznego lub prywatnego adresu URL usługi git, który będzie również automatycznie otwierał folder w środowisku IDE.
- Logowanie, przeglądanie, łączenie się jednym kliknięciem z hostowanymi repozytoriami usługi DevOps i klonowanie ich oraz instalowanie rozszerzeń dla innych hostów kontroli źródła w celu wyświetlania repozytoriów należących do Ciebie i Twojej organizacji.
- Przeglądaj swój dysk lokalny lub udział sieciowy w poszukiwaniu projektów, rozwiązań lub dowolnych folderów zawierających kod i otwieraj je w środowisku IDE.
- Wybieranie szablonu projektu, zawierającego szkielet kodu, który ułatwia rozpoczęcie pracy z nowym projektem lub rozwiązaniem.
- Wyszukiwanie szablonów projektów według tytułu, opisu i tagów oraz filtrowanie według dostępnych języków, platform oraz typów projektu. Domyślna lista zawiera wszystkie dostępne szablony, natomiast w okienku po lewej stronie jest wyświetlana lista dziesięciu najczęściej ostatnio używanych szablonów projektów, umożliwiająca szybki dostęp. Dwustronicowy kreator pozwala skoncentrować się w danym momencie na jednej decyzji.
Powłoka i platforma
- Szybko sprawdzaj wersję otwieranego i używanego programu Visual Studio dzięki nowej, ulepszonej ikonie produktu. Nowa ikona jest również lepiej widoczna na różnych tłach.
- Korzystaj z unowocześnionego wyglądu i działania programu Visual Studio dzięki odświeżonemu przez nas niebieskiemu motywowi, który zapewnia bardziej przejrzysty interfejs użytkownika, nadal spełniając nasze standardy dotyczące ułatwień dostępu.
- Zobacz więcej kodu dzięki wprowadzonym przez nas zmianom, które sprzyjają kompaktowości i odzyskują miejsce w pionie w środowisku IDE. Połączyliśmy pasek tytułu z paskiem menu, zachowując przy tym dotychczasowe funkcje.
- Używaj programu Visual Studio jako aplikacji umożliwiającej rozpoznawanie monitorów za pomocą nowego, eksperymentalnego ustawienia. Gdy to ustawienie jest włączone, ułatwia ono niektórym elementom programu Visual Studio, takim jak powłoka i edytor, ostrzejsze renderowanie niezależnie od konfiguracji ekranu i/lub skalowania.
- Poznaj ulepszone środowisko wyszukiwania w menu, poleceniach, opcjach i składnikach możliwych do zainstalowania. Teraz nasze nowe wyszukiwanie wyświetla wyniki w sposób dynamiczny, obsługuje błędy pisowni i dostarcza istotne informacje (takie jak skróty klawiaturowe) w wynikach wyszukiwania.
- Wyświetlaj informacje o kondycji skojarzone z aktualnie otwartym plikiem, korzystając z funkcji Wskaźnik kondycji dokumentu.
- Jeśli jesteś deweloperem języka C#, możesz szybko wyczyścić niektóre z najpopularniejszych sugestii kodowania za pomocą funkcji oczyszczania kodu.
- Wybierz zestaw programów naprawiających, które mają być uruchomione, konfigurując oczyszczanie kodu.
- Zobacz zawartość historii schowka za pośrednictwem menu kontekstowego, które rozszerza Schowek pierścieniowy (Ctrl + Shift + V).
- Ulepszyliśmy środowisko wyszukiwania przez:
- Dodanie filtrów dla menu, składników i szablonów
- Dołączenie opcji wyszukiwania umożliwiających uzyskanie najodpowiedniejszych wyników wyszukiwania
- Umożliwienie tworzenia nowych projektów/elementów i dodawania ich do rozwiązania bezpośrednio z poziomu funkcji wyszukiwania w programie Visual Studio
- Udoskonalone środowisko funkcji świadomości monitora (PMA) jest teraz domyślnie włączone dla użytkowników, którzy spełniają minimalny zestaw wymagań (platforma .NET 4.8 w wersji zapoznawczej oraz aktualizacja systemu Windows 10 z kwietnia 2018 r. lub nowsza). Okna narzędzi, takich jak Toolbox, Breakpoints, Watch, Locals, Autos i Call Stack zostały przekonwertowane na środowisko PMA, dzięki czemu zapewniają ostrość renderowania niezależnie od konfiguracji ekranu i/lub skalowania.
- Dodano nowe środowisko powiadomień:
- Nowa ikona i środowisko licznika na pasku stanu
- Nowy mechanizm powiadomień wyskakujących
- Powiadomienia o wygasaniu licencji aktualizacji programu Visual Studio i programu Visual Studio
- Poprawione środowisko motywu Niebieski, w którym uwzględniono opinie użytkowników, zmniejszając jasność, zwiększając kontrast i rozwiązując inne problemy z użytecznością.
- Udoskonalone funkcje przeciągania okien dzięki wykorzystaniu dostępnego wolnego miejsca w regionie paska narzędzi jako regionu przeciąganego.
- Teraz możesz zapisać kolekcję programów naprawiających oczyszczania kodu jako profil, aby umożliwić szybkie wybieranie zestawu programów naprawiających, które mają być uruchamiane podczas oczyszczania kodu.
- W oknie dialogowym Rozszerzenia i aktualizacje dodaliśmy tagi, które ułatwiają szybkie zorientowanie się, czy rozszerzenie jest w wersji zapoznawczej, jest rozszerzeniem płatnym, czy znajduje się w okresie próbnym.
- Zalecanym sposobem implementowania etykietek narzędzi danych w programie Visual Studio 2019 i nowszych jest teraz IAsyncQuickInfoSourceProvider. Starsze interfejsy API szybkich informacji edytora IVsTextTipData i TextTipData są przestarzałe w programie Visual Studio 2019 (wersja zapoznawcza 1).
- Tagi inteligentne edytora (rodzina interfejsów ISmartTag* w przestrzeni nazw Microsoft.VisualStudio.Language.Intellisense) została zastąpiona interfejsem API LightBulb i nie jest już obsługiwana, począwszy od programu Visual Studio 2019 (wersja zapoznawcza 1).
- Opcje rozwiązania Pokaż zaawansowane konfiguracje kompilacji, Zawsze pokazuj rozwiązanie i Zapisz nowe projekty po utworzeniu zostały usunięte z powodu niskiego wykorzystania. Dla tych wartości została ustawiona ich wartość domyślna True.
- Wyraź zgodę na korzystanie z niektórych funkcji w wersji zapoznawczej lub korzystanie z nich przy użyciu nowej strony Funkcje w wersji zapoznawczej dostępnej w obszarze Narzędzia >Opcje > środowiska > w wersji zapoznawczej.
Wydajność
- Dodaliśmy nowy skrót do wyboru kompilacji dla folderów i rozwiązań: Ctrl + B.
- Szybkie otwieranie dużych rozwiązań dzięki załadowaniu rozwiązania ze zwolnionymi wszystkimi projektami.
- Wybieranie projektów do załadowania podczas otwierania rozwiązania za pomocą plików filtru rozwiązania.
- Możesz utworzyć plik filtru rozwiązania, zwalniając projekty, które nie mają otwierać się automatycznie, klikając rozwiązanie prawym przyciskiem myszy i wybierając opcję Zapisz jako filtr rozwiązania. Pliku filtru możesz następnie używać do otwierania rozwiązania w późniejszym czasie.
- Dodaliśmy polecenie do kompilowania wszystkich dla plików CMake: Ctrl + Shift + B.
- Ulepszyliśmy wydajność funkcji IntelliSense w plikach języka C++ w projektach CMake.
- Dodaliśmy polecenie umożliwiające ładowanie niezaładowanych zależności projektu do menu kontekstowych projektów i rozwiązań.
- Porady dotyczące powiadomień w celu zwiększenia wydajności programu Visual Studio są teraz utrwalane w centrum wydajności, dostępne za pośrednictwem pomocy dotyczącej > zarządzania wydajnością programu Visual Studio.
- Teraz możesz wyświetlać postęp ładowania rozwiązania w centrum stanu zadań, a także alerty po zakończeniu ładowania rozwiązania.
- Wybieranie projektów do załadowania podczas otwierania rozwiązania za pomocą plików filtru rozwiązania.
- Utwórz plik filtru rozwiązania, zwalniając projekty, które nie mają otwierać się automatycznie, klikając rozwiązanie prawym przyciskiem myszy i wybierając opcję Zapisz jako filtr rozwiązania. Pliku filtru możesz następnie używać do otwierania rozwiązania w późniejszym czasie.
- Wypróbuj ulepszone wykrywanie zasobów kompilacji i wyszukiwanie plików po naciśnięciu klawiszy Ctrl+T w scenariuszach obejmujących otwieranie folderów.
- Zwróć uwagę na ulepszenia wydajności, dzięki którym edytor programu Visual Studio ogranicza teraz wpływ składników pomocniczych na wydajność wpisywania. W szczególności automatycznie anuluje wszelkie długotrwałe, mniej ważne operacje podczas wpisywania.
- Zachowanie ograniczeń składników pomocniczych programu Visual Studio można skonfigurować za pomocą zaawansowanego edytora > tekstów Opcji > narzędzi>:
- Teraz możesz wyłączyć przywracanie stanu hierarchii projektu z poprzedniej sesji w oknie narzędzia Eksplorator rozwiązań. Wprowadziliśmy tę zmianę, ponieważ przywracanie hierarchii projektu z poprzedniej sesji w otwartym rozwiązaniu może opóźniać ładowania rozwiązania.
- Przełącz tę opcję w obszarze Narzędzia > Opcje > projekty i rozwiązania > Ogólne.
Debugowanie ogólne i diagnostyka
Debugowanie ogólne
- Wyróżniaj, znajduj i nawiguj za pomocą słów kluczowych, używając naszej nowej funkcji wyszukiwania, którą zintegrowaliśmy z oknami Wyrażenie kontrolne, Automatyczne i Zmienne lokalne.
- Wyświetlaj listę rozwijaną specyfikatorów i opcji umożliwiających formatowanie danych w oknach Wyrażenie kontrolne, Automatyczne i Zmienne lokalne, dodając przecinek do elementu na liście.
- Teraz możesz korzystać z obsługi wizualizatora niestandardowego oraz wizualizatora zestawu danych dla platformy .NET Core.
- W przypadku aplikacji C++ w systemie Windows plik PDB jest teraz ładowany w ramach oddzielnego, 64-bitowego procesu. Ta zmiana ma zapobiec licznym awariom powodowanym przez brak pamięci debugera podczas debugowania aplikacji, które zawierają dużą liczbę modułów i plików PDB.
Zarządzane punkty przerwania danych
Teraz można przerwać, gdy wartość właściwości określonego obiektu zmienia się w aplikacjach platformy .NET Core (3.0 lub nowszych) przy użyciu punktów przerwania danych, czyli funkcji, która pierwotnie była wyłączna na język C++. Jest to świetna alternatywa, aby po prostu umieścić punkt przerwania w ustawieniu właściwości, ponieważ punkt przerwania danych może skupić się na właściwości określonego obiektu nawet wtedy, gdy jest poza zakresem, podczas gdy pierwsza opcja może spowodować stałe, nieistotne przerwy, jeśli masz setki obiektów wywołujących tę funkcję.
Aktualizacje środowiska użytkownika wyszukiwania w oknie Wyrażenie kontrolne
Zaktualizowaliśmy interfejs użytkownika wyszukiwania w oknach Automatyczne, Lokalne i Wyrażenie kontrolne, upraszczając go. Funkcja Wyszukaj głębiej jest teraz listą rozwijaną umożliwiającą szybkie wybieranie głębokości początkowego wyszukiwania i kolejnych wyszukiwań.
Stosowanie preferencji stylu kodu
- Teraz możesz stosować preferencje stylu kodu z wiersza polecenia za pomocą globalnego narzędzia dotnet format. Aby je zainstalować, potrzebny jest zestaw .NET Core 2.1 SDK lub nowszy. Uruchom następujące polecenie w swoim ulubionym terminalu:
dotnet tool install -g dotnet-format --version 3.0.0-beta4-19105-10
Rozszerzalność
- W programie Visual Studio 2019 nie możesz dłużej instalować rozszerzeń skompilowanych przy użyciu formatu rozszerzeń vsixmanifest w wersji V1. Wersja V1 została wprowadzona w programie Visual Studio 2010 i wycofana w programie Visual Studio 2017, ponieważ mogła powodować problemy z niezawodnością w programie Visual Studio. W programie Visual Studio 2019 obsługa wersji V1 została całkowicie usunięta. Rozszerzenia przeznaczone dla programu Visual Studio 2019 powinny zostać ponownie skompilowane w wersji V2 lub V3 formatu vsixmanifest.
- Teraz będziesz otrzymywać powiadomienia, gdy rozszerzenie będzie synchronicznie ładowane automatycznie. Zwróć uwagę, że w tej wersji rozszerzenie będzie się ładować i działać jak zwykle, ale istnieje ryzyko, że nie będzie działać w następnej aktualizacji programu Visual Studio 2019. Więcej szczegółów zawiera nasz wpis w blogu dotyczący skracania czasu reakcji scenariuszy o kluczowym znaczeniu przez aktualizowanie automatycznego ładowania dla rozszerzeń.
Ujednolicony pakiet NuGet zestawu SDK
W przeszłości autorzy rozszerzeń musieli tworzyć wiele oddzielnych odwołań do pojedynczych pakietów NuGet zestawu Visual Studio SDK, których chcieli użyć w swoim rozszerzeniu. Wersje różnych pakietów nie zawsze były wyrównane i często powodowały konflikty zależności w czasie kompilacji, a także problemy ze środowiskiem uruchomieniowym.
Aby rozwiązać te problemy, korzystaj z nowego pakietu o nazwie Microsoft.VisualStudio.SDK, który zawiera zależności dla wszystkich pakietów tworzących zestaw Visual Studio SDK. Rozwiązuje to problem niezgodności wersji, a także ułatwia określenie, której wersji użyć. Wystarczy użyć wersji pakietu, która odpowiada najniższej wersji programu Visual Studio obsługiwanej przez rozszerzenie, aby mieć dostęp do całego zestawu SDK.
Obecnie istnieje tylko wersja 15.9 pakietu SDK, ale w nadchodzących miesiącach zostaną wydane kolejne wersje aż do wersji 14.0.
Nowe i zaktualizowane szablony projektów
W szablonie Projekt VSIX wprowadzono wiele aktualizacji, aby go uprościć i ulepszyć:
- Korzysta z nowego, ujednoliconego pakietu NuGet zestawu SDK
- Obejmuje klasę AsyncPackage
- Nie wymaga już pliku resx do skompilowania pakietu
- Przeznaczony dla programu .NET Framework 4.7.2
Utworzono nowy szablon Pusty projekt VSIX. Jest on taki sam jak szablon Projekt VSIX, ale nie ma klasy AsyncPackage. Odwołuje się on również do ujednoliconego pakietu NuGet zestawu SDK, zapewniając dobry punkt wyjścia dla rozszerzeń MEF i innych typów rozszerzeń bez pakietów.
Bezpłatne/płatne/wersja próbna
Nie było łatwego sposobu sprawdzenia, czy rozszerzenie zostało oznaczone jako bezpłatne, płatne lub próbne. Teraz ulega to zmianie. W oknie dialogowym Rozszerzenia i aktualizacje każde rozszerzenie, które jest w wersji próbnej lub płatne, zostanie wyraźnie odpowiednio oznaczone. Rozszerzenia, które nie mają etykiety próbnej/płatnej, są bezpłatne.
Narzędzia do testowania
Dodatkowe interfejsy API w oknie testów, które wcześniej były nieudokumentowane, ale oznaczone jako publiczne, zostały dodane do listy wycofania.
Kontrola źródła
- Tymczasowo przechowuj zmiany w celu pracy nad innym zadaniem dzięki obsłudze narzędzi Git do przechowywania w programie Team Explorer.
- Przeglądaj, uruchamiaj, a nawet debuguj żądania ściągnięcia z usługi Azure Repos bez opuszczania środowiska IDE, korzystając z naszego zupełnie nowego środowiska żądania ściągnięcia w programie Visual Studio 2019. Aby rozpocząć pracę, możesz pobrać rozszerzenie Żądania ściągnięcia dla programu Visual Studio z witryny Visual Studio Marketplace.
MSBuild
- Wersja zestawu narzędzi MSBuild została zmieniona z
15.0
naCurrent
. PlikMSBuild.exe
znajduje się teraz w katalogu%VSINSTALLDIR%\MSBuild\Current\Bin\MSBuild.exe
. - Program MSBuild (i Visual Studio) jest teraz przeznaczony dla platformy .NET Framework 4.7.2. Jeśli chcesz używać nowych funkcji interfejsu API programu MSBuild, Twój zestaw również wymaga uaktualnienia, ale istniejący kod w dalszym ciągu będzie działać.
C#
W przypadku każdej wersji programu wydanej przed wersją Visual Studio 2019 domyślna wersja języka C# była zawsze odpowiednikiem bieżącej wersji głównej. W programie Visual Studio 2017 język C# ewoluował i wydał trzy wersje pomocnicze: 7.1, 7.2 i 7.3. W nowych projektach jednak nadal domyślnie wybieraną wersją jest wersja języka C# 7.0. Okazało się to problematyczne dla deweloperów języka C#, którzy chcieli korzystać z nowych funkcji, ale musieli ręcznie zmieniać wersję języka dla każdego nowego projektu.
Aby rozwiązać ten problem, domyślna wersja języka C# jest określana przez platformę docelową:
- Jeśli docelową platformą jest platforma .NET Core 3.0 w wersji zapoznawczej, wybrana zostanie wersja 8.0 języka C# (wersja zapoznawcza).
- Jeśli docelową platformą jest platforma .NET Framework lub jakakolwiek inna wersja niezapoznawcza platformy .NET Core, wybrana zostanie wersja 7.3 języka C#.
Umożliwi to domyślne użycie najnowszych stabilnych funkcji języka C#, a podczas korzystania z platformy .NET Core w wersjach zapoznawczych — użycie funkcji języka C# w wersji zapoznawczej 8.0, która odpowiada wersji zapoznawczej platformy .NET Core 3.0.
Jeśli określisz wersję języka za pośrednictwem polecenia LangVersion
w projekcie lub pliku właściwości, ta wersja języka zastąpi wcześniej opisaną wersję domyślną.
C++
- Współpracuj w czasie rzeczywistym dzięki obsłudze języka C++ przez funkcję Visual Studio Live Share.
- Oszczędzaj czas za pomocą opcjonalnego rozszerzenia IntelliCode, które korzystając z rozbudowanego szkolenia i kontekstu kodu, umieszcza najbardziej prawdopodobne do użycia elementy na początku listy uzupełniania. W przypadku języka C++ rozszerzenie IntelliCode zapewnia najlepszą pomoc, gdy używasz popularnych bibliotek, takich jak STL.
- Zmodyfikowaliśmy kilka nazw i opisów szablonów projektu, aby dopasować je do zaktualizowanego okna dialogowego Nowy projekt.
- Usunęliśmy eksperymentalny składnik Clang/C2. Używaj zestawu narzędzi MSVC, aby uzyskać pełną zgodność języka C++ ze standardami /permissive- i/lub /std:c++17 albo łańcuchem narzędzi Clang/LLVM dla systemu Windows. Aby uzyskać więcej szczegółowych informacji, zobacz Blog zespołu Visual C++.
- Wycofaliśmy przełącznik /Gm kompilatora języka C++. Rozważ wyłączenie przełącznika /Gm w skrypcie kompilacji, jeśli jest jawnie zdefiniowany. Możesz również bezpiecznie zignorować ostrzeżenie o wycofaniu przełącznika /Gm, ponieważ nie będzie traktowane jako błąd podczas korzystania z opcji „Traktuj ostrzeżenia jako błędy” (/WX).
- Środowiskiem systemu Android dla języka C++ jest teraz domyślnie zestaw SDK 25 dla systemu Android i zestaw NDK 16b dla systemu Android.
Produktywność
- Analiza kodu działa teraz automatycznie w tle. Ostrzeżenia są wyświetlane podczas pisania jako zielone podkreślenia w edytorze.
- Pasek szablonów korzysta teraz z interfejsu użytkownika okna podglądu, zamiast z okna modalnego, obsługuje szablony zagnieżdżone i wstępnie wypełnia wszystkie argumenty domyślne w oknie podglądu.
- Automatyczne poprawki dla ostrzeżenia analizy kodu NULL-nullptr> (C26477 USE_NULLPTR_NOT_CONSTANT) jest dostępne za pośrednictwem menu żarówki w odpowiednich wierszach, włączone domyślnie w zestawie reguł typów sprawdzania podstawowego języka C++. Dodatkowe szybkie poprawki w środowisku IDE obejmują dodawanie brakujących dyrektyw #uwzględnij, uzupełnianie brakujących średników i naprawianie nieprawidłowego użycia symboli „*” i „&”.
- Prekompilowane nagłówki nie są już generowane domyślnie dla konsoli C++ i aplikacji klasycznych.
- Polecenie Przejdź do definicji działa teraz w dyrektywach #uwzględnij, otwierając odpowiedni plik. Dotyczy to również skrótu F12, który zapewnia łatwy sposób nawigowania po kodzie.
- Umieszczenie kursora na zamykającym nawiasie klamrowym bloku kodu powoduje wyświetlenie pewnych przydatnych informacji na temat kontekstu tego bloku.
- W programie ConcurrencyChecker dodaliśmy obsługę dobrze znanych typów STL z nagłówka <mutex>.
- Dostępna jest zaktualizowana implementacja częściowa narzędzia sprawdzania profilu przez cały okres istnienia umożliwiająca wykrywanie zawieszonych wskaźników i odwołań.
- Dodaliśmy początkową obsługę w kompilatorze dla operatora <C++20 => ("statek kosmiczny") w celu porównania trzykierunkowego.
CMake
- Zwiększyliśmy wydajność funkcji IntelliSense dla plików języka C++ w projektach CMake.
- Program Visual Studio ułatwia rozpoczęcie programowania w języku C++ za pomocą narzędzia CMake w systemie Linux, wykrywając, czy na komputerze z systemem Linux znajduje się zgodna wersja narzędzia CMake. W przeciwnym razie umożliwia jej zainstalowanie dla Ciebie.
- Edytor ustawień narzędzia CMake stanowi alternatywę dla pliku CMakeSettings.json i zapewnia częściową zgodność z interfejsem CMakeGUI.
- Menu narzędzia CMake zostało usunięte i zreorganizowane w celu uzyskania większej zgodności z projektami i rozwiązaniami.
- Niezgodne ustawienia w pliku CMakeSettings, takie jak niezgodne architektury lub niezgodne ustawienia generatora CMake, powodują wyświetlanie falistych podkreśleń w edytorze kodu JSON i błędów na liście błędów.
- W projektach CMake otwieranych w środowisku IDE po uruchomieniu polecenia
vcpkg integrate install
automatycznie jest wykrywany i włączany łańcuch narzędzi vcpkg. To zachowanie można wyłączyć, określając pusty plik łańcucha narzędzi w pliku CMakeSettings. - W projektach CMake domyślnie jest teraz włączane debugowanie Tylko mój kod.
- Ostrzeżenia analizy statycznej można teraz przetwarzać w tle i wyświetlać w edytorze projektów CMake.
- Dodaliśmy bardziej zrozumiałe komunikaty dotyczące „rozpoczęcia” i „zakończenia” kompilowania oraz konfigurowania dla projektów CMake, a także obsługę interfejsu użytkownika postępu kompilacji w programie Visual Studio. Ponadto istnieje teraz ustawienie szczegółowości narzędzia CMake w obszarze Opcje narzędzi>, aby dostosować poziom szczegółowości komunikatów kompilacji i konfiguracji narzędzia CMake w oknie danych wyjściowych.
- Ustawienie „cmakeToolchain” jest teraz obsługiwane w pliku CMakeSettings, umożliwiając określanie łańcuchów narzędzi bez konieczności ręcznego modyfikowania wiersza polecenia w narzędziu CMake.
Zaplecze
- Wprowadziliśmy ulepszenia przepływności kompilacji, między innymi obsługę konsolidatora operacji we/wy w pliku i czasu łączenia w procesach scalania i tworzenia pliku typu PDB.
- Dodaliśmy podstawową obsługę wektoryzacji SIMD w programie OpenMP. Można ją włączyć za pomocą nowego przełącznika wiersza polecenia -openmp:experimental. Umożliwia to wektoryzację pętli z adnotacją „#pragma omp simd”. Wektoryzacja nie jest gwarantowana, a pętle z adnotacjami, które nie zostały zwektoryzowane, powodują zgłaszanie ostrzeżeń. Jeśli klauzule SIMD nie są obsługiwane, zostaną one po prostu zignorowane i zgłoszone w postaci ostrzeżenia.
- Dodaliśmy nowy przełącznik wiersza polecenia -Ob3, który jest bardziej agresywną wersją przełącznika -Ob2. -O2 (optymalizacja danych binarnych pod kątem szybkości) nadal domyślnie oznacza -Ob2. Jeśli okaże się, że kompilator nie nadąża z wbudowywaniem funkcji, rozważ przekazywanie przełączników -O2 -Ob3.
- Aby zapewnić obsługę ręcznej wektoryzacji pętli zawierających wywołania funkcji bibliotek matematycznych i niektórych innych operacji, takich jak dzielenie liczb całkowitych, dodaliśmy obsługę funkcji wewnętrznych biblioteki SVML (Short Vector Math Library), które umożliwiają obliczanie 128-, 256- lub 512-bitowych odpowiedników wektorów. Aby uzyskać definicje obsługiwanych funkcji, zobacz Intel Intrinsic Guide (Przewodnik wewnętrzny firmy Intel).
- Nowe i ulepszone optymalizacje:
- Składanie stałych i uproszczenia arytmetyczne dla wyrażeń korzystających z funkcji wewnętrznych SIMD (wektorowych) w przypadku formularzy liczb zmiennoprzecinkowych i całkowitych
- Bardziej zaawansowana analiza wyodrębniania informacji z przepływu sterowania (instrukcje if/else/switch) w celu usuwania gałęzi zawsze sprawdzonych jako prawda lub fałsz
- Ulepszone odwijanie funkcji memset umożliwiające korzystanie z instrukcji wektorowych SSE2
- Ulepszone usuwanie bezużytecznych kopii struktury/klasy, szczególnie w przypadku programów C++, które przekazują wartość
- Ulepszona optymalizacja kodu za pomocą funkcji memmove, takiej jak konstrukcja std::copy lub std::vector i std::string
Zakończenie obsługi
- Szablon zarządzanego projektu testowego w języku C++ nie jest już dostępny. Możesz w dalszym ciągu korzystać z zarządzanej platformy testowej w języku C++ w istniejących projektach, ale w przypadku nowych testów jednostkowych zastanów się nad użyciem jednej z natywnych platform testowych, dla których program Visual Studio udostępnia szablony (MSTest, Google Test), lub szablonu zarządzanego projektu testowego w języku C#.
- Zestaw Windows 8.1 SDK nie jest już dostępny w instalatorze programu Visual Studio. Przeprowadź uaktualnienie projektów w języku C++ do najnowszego zestawu Windows 10 SDK. Jeśli masz stałą zależność od systemu w wersji 8.1, możesz pobrać go z archiwum zestawu Windows SDK.
- Obsługa systemu Windows XP nie będzie już dostępna w najnowszym zestawie narzędzi języka C++. Obsługa systemu XP za pomocą bibliotek i kompilatora MSVC na poziomie programu VS 2017 jest wciąż możliwa i można ją zainstalować za pośrednictwem opcji „Poszczególne składniki”.
- Nasza dokumentacja aktywnie zniechęca do użycia modułów scalania w przypadku wdrożenia środowiska uruchomieniowego Visual C++. W tym wydaniu idziemy dalej, oznaczając nasze pliki MSM jako przestarzałe. Rozważ migrację wdrożenia centralnego VCRuntime z plików MSM do pakietu redystrybucyjnego.
- Następujące kreatory ATL/MFC języka C++ nie są już dostępne: Kreator składników ATL COM+ 1.0, Kreator składników stron aktywnych serwerów ATL, Kreator dostawcy ATL OLE DB, Kreator strony właściwości ATL, Kreator konsumenta OLE DB ATL, klient MFC ODBC, klasa MFC z kontrolki ActiveX i klasa MFC z biblioteki typów. Przykładowy kod dla tych technologii jest archiwizowany w repozytorium GitHub VCSamples.
F#
Ulepszenia języka F# w programie Visual Studio 2019 obejmują trzy główne obszary:
- F# 4.6
- Znaczne ulepszenie wydajności w przypadku średnich i większych rozwiązań
- Dużo pracy w środowisku open source wykonywanej przez naszą wspaniałą społeczność open source
F# 4.6
To wydanie zawiera język F# 4.6:
- Do języka zostały dodane typy rekordów anonimowych, w tym obsługa wszystkich narzędzi, oraz możliwość emitowania typów do obiektów JavaScript za pomocą kompilatora Fable.
- Zgodność funkcji typu ValueOption i modułu ValueOption z typem Option.
- Funkcja tryExactlyOne dla tablic, list i sekwencji (dodał Grzegorz Dziadkiewicz).
Ulepszenia w kompilatorze F# i elemencie FSharp.Core
Zostały wprowadzone liczne ulepszenia języka F#, kompilatora oraz elementu FSharp.Core, zwłaszcza dzięki uczestnikom projektów typu open source:
- Domyślnie programy fsi.exe i fsc.exe korzystają teraz z programu .NET Framework 4.7.2, umożliwiając ładowanie składników przeznaczonych dla tego programu lub wcześniejszych wersji (problem nr 4946).
- Zoptymalizowaliśmy metody w strukturach i rekordy struktur, aby działały tak dobrze jak metody w klasach i rekordy oparte na klasach (#3057).
- Zoptymalizowaliśmy emitowany poziom integralności dla połączonych operatorów logicznych w kodzie języka F# (problem nr 635).
- Zoptymalizowaliśmy użycie znaku
+
z ciągami w języku F#, aby wywoływać minimalną możliwą liczbę wywołańString.Concat
(#5560). - Rozwiązaliśmy problem z pakietem FSharp.Core polegający na tym, że były uwzględnione dodatkowe katalogi z testowymi zasobami. Wersje 4.5.5 i 4.6.1 pakietu FSharp.Core powinny zawierać poprawkę (problem nr 5814).
- Gdy atrybut zdefiniowany przez użytkownika nie dziedziczy z klasy
Attribute
, jest teraz wyświetlane ostrzeżenie. Autor: Vasily Kirichenko. - Wartość
AssemblyInformationVersionAttribute
w pliku projektu obsługuje teraz dowolne wartości w celu obsługi scenariuszy, takich jak SourceLink (#4822). - Usterka polegająca na tym, że niedozwolona składnia zawierająca aktywne wzorce mogła powodować wewnętrzny błąd kompilatora, została usunięta przez Steffena Forkmanna (#5745).
- Usterka polegająca na tym, że do modułu był przez pomyłkę dodawany sufiks
Module
, aby moduł cykliczny odpowiadał typowi, gdy jedyną różnicą jest parametr ogólny, została usunięta przez użytkownika BooksBaum (#5794). - Usprawnienie komunikatu o błędzie, gdy parametry typu nie znajdują się obok nazwy typu, zostało wprowadzone przez Alana Balla (#4183).
- Literałowy sufiks
uint16
nieprawidłowych literałów numerycznych jest poprawnie wyświetlany w komunikatach o błędach — Teo Tsirpanis (#5712). - Komunikaty o błędach dotyczące wyrażeń obliczeń nie zawierają już informacji
async
, a zamiast tego odnoszą się do „wyrażeń obliczeń” — John Wostenberg (#5343). - Komunikat o błędzie podczas nieprawidłowego odwoływania się do bibliotek
.dll
w interaktywnym języku F# został naprawiony przez Bartoza Sypytkowskiego (#5416). - Usterka polegająca na tym, że statycznie rozwiązywane parametry typu nie obsługiwały wywołań elementu członkowskiego ukrywającego dziedziczony element członkowski została naprawiona przez Victora Petera Rouvena Müllera (#5531).
- Różne mniejsze ulepszenia wydajności zostały dodane do kompilatora przez Steffena Forkmanna i Roberta Jeppesena.
Usprawnienia wydajności języka F#
Kolejnym dużym obszarem zainteresowania w przypadku języka F# w programie Visual Studio 2019 była wydajność średnich i dużych rozwiązań. Firma Microsoft rozwiązała kilka problemów, które od dawna sprawiały trudność użytkownikom — czasem już od pierwszej wersji narzędzi F# dla programu Visual Studio. Tu również otrzymaliśmy pomoc ze strony niezawodnej społeczności projektów open source języka F#.
- Odnowiliśmy sposób inicjowania usługi językowej F# w programie Roslyn. Kolorowanie typów dla większych rozwiązań powinno na ogół pojawiać się wcześniej.
- Zmieniliśmy reprezentację tekstu źródłowego, aby uniknąć dużych alokacji wraz z upływem czasu, szczególnie w przypadku większych plików (problemy nr 5935, 5936, 5937 i 4881).
- Wprowadziliśmy zmiany w pamięciach podręcznych kompilacji, aby niewielkie zmiany w plikach używały znacznie mniejszej ilości pamięci (problem nr 6028).
- Zmodyfikowaliśmy funkcję kompilatora sugerującą nazwy podczas wprowadzania nierozpoznanych tokenów, tak aby wyliczała te sugestie wyłącznie na żądanie, czego skutkiem jest zmniejszenie ilości zużywanej pamięci oraz procesora CPU podczas powolnego wprowadzania dużych rozwiązań (problem nr 6044).
- Zmieniliśmy funkcję IntelliSense, dzięki czemu nie są już domyślnie wyświetlane symbole z nieotwartych przestrzeni nazw. Poprawiło to wydajność funkcji IntelliSense w projektach z wieloma odwołaniami. Tę funkcję można włączyć z powrotem w ustawieniach za pomocą narzędzia > Opcje > Edytor > tekstu F# > IntelliSense.
- Ulepszyliśmy użycie pamięci w przypadku korzystania z dostawców typów w celu generowania dużej ilości dostarczanych typów na liście uzupełniania (#5599).
- Zmniejszenie użycia procesora CPU oraz pamięci w wewnętrznym algorytmie porównania ciągów w celu sugerowania nierozpoznanych nazw zostało poprawione przez użytkownika Avi Avni (problem nr 6050).
- Istotne źródło dużych alokacji ciągów, szczególnie w przypadku narzędzi środowiska IDE, zostało naprawione przez Aviego Avniego (#5922).
- Istotne źródło alokacji sterty dla obiektów wielkich napływających z obliczeń funkcji IntelliSense zostało naprawione przez użytkownika Chet Husk (problem nr 6084)
Ulepszenia narzędzi języka F#
Oprócz ulepszeń wydajności wprowadzono wiele ulepszeń narzędzi języka F# w programie Visual Studio 2019:
- Poprawka kodu instrukcji Dodaj
open
teraz domyślnie powoduje dodanie instrukcjiopen
na początku pliku. - Usunęliśmy usterkę powodującą, że instrukcja
match!
w kodzie użytkownika unieważniała wskazówki dotyczące struktury i węzły zwijania kodu dla kolejnych zakresów (#5456). - Obecnie edytor oznacza poprawnie kolorem wartości
byref
,outref
iref
jako pola rekordów za pomocą kolorowania wartości modyfikowalnych (#5579). - Usunęliśmy usterkę polegającą na tym, że refaktoryzacja zmiany nazwy nie rozpoznawała znaku
'
w nazwach symboli (#5604). - Naprawiliśmy występującą od dawna usterkę, która polegała na tym, że zmiana nazw plików skryptów w języku F# powodowała utratę danych kolorowania (#1944).
- Firma Microsoft oczyściła funkcję IntelliSense, tak aby nie pokazywała niepowiązanych elementów na liście po naciśnięciu klawisza backspace.
- Dzięki eleganckiemu wcięciu wklejenie kodu F# do edytora powoduje teraz sformatowanie go w taki sposób, aby pasował do odpowiedniego zakresu na podstawie bieżącego położenia kursora — zmiana zaimplementowana przez Saula Rennisona (#4702).
- Jakob Majocha naprawił problem powodujący brak synchronizacji opcji edytora F# (problemy nr 5997 i 5998).
- Błąd polegający na tym, że funkcja IntelliSense w konstruktorze w ramach klauzuli
inherit
nie pokazywała głównego konstruktora, został naprawiony przez użytkownika Eugene Auduchinok (problem nr 3699) - Różne mniejsze ulepszenia w usłudze języka F# zostały wprowadzone przez użytkownika Eugene Auduchinok
Infrastruktura „open source” języka F#
Przeprowadziliśmy pełną migrację języka F# i bazy kodu narzędzi F# w celu używania zestawu SDK platformy .NET. Powinno to znacząco uprościć proces kontrybucji w przypadku deweloperów, zwłaszcza jeśli nie korzystają z systemu Windows. Ponadto Jakub Majocha pomógł w oczyszczeniu dokumentów dla nowych współautorów pod kątem zmian w bazie kodu.
Python
Program Visual Studio 2019 zawiera ulepszony w oparciu o opinie klientów interfejs zarządzania środowiskami języka Python:
- Dodaliśmy nowe okno dialogowe Dodaj środowisko, które upraszcza tworzenie i dodawanie środowisk wirtualnych oraz środowisk conda w projekcie.
- Instalator programu Visual Studio nie instaluje już pełnych wersji programu Anaconda, aby zredukować rozmiar instalacji programu Visual Studio i uniknąć błędów podczas uaktualniania.
- W pakiecie z obciążeniem Python jest dostępny opcjonalny składnik Miniconda, który umożliwia tworzenie środowisk conda bez konieczności instalowania platformy Miniconda/Anaconda.
- Teraz monit o dodanie środowiska będzie wyświetlany automatycznie, jeśli w folderze głównym projektu znajduje się plik requirements.txt (środowisko wirtualne) lub environment.yml (środowisko conda).
- Podczas edytowania plików języka Python dostępny jest nowy pasek narzędzi środowisk Python. Nowy pasek narzędzi umożliwia przełączanie się między różnymi interpreterami języka Python podczas pracy z projektami, obszarami roboczymi Open Folder czy luźnymi plikami języka Python w innych projektach.
- Ulepszenia jakości funkcji automatycznego uzupełniania w funkcji IntelliSense dla języka Python, w tym poprawione wykrywanie importów względnych oraz przestrzeni nazw.
- Szablony projektów Django zostały zaktualizowane na potrzeby obsługi wersji Django 2.x.
- Zwracane wartości funkcji są teraz wyświetlane w debugerze języka Python.
- Można teraz tworzyć sesje rozszerzenia Visual Studio Live Share i pracować nad kodem w języku Python wspólnie z innymi użytkownikami programu Visual Studio. Wcześniej język Python był obsługiwany tylko w przypadku dołączania do sesji utworzonych w programie Visual Studio Code.
JavaScript/TypeScript
- Dodaliśmy obsługę włączania debugowania kodu JavaScript w ramach testów jednostkowych w projektach środowiska Node.js. Na tę funkcję od dawna czekali nasi użytkownicy środowiska Node.js.
- Od teraz usługa językowa JavaScript/TypeScript będzie automatycznie ładowana w projektach, które mają zainstalowany pakiet NuGet TypeScript lub pakiet npm (obsługiwana jest wersja TypeScript 3.2 i nowsze z pakietu NuGet oraz TypeScript 2.1 i nowsze z pakietu npm).
- Wprowadziliśmy ulepszenia wydajności w usłudze językowej dzięki zwiększeniu limitu pamięci usługi językowej w celu obsługi większych projektów.
- Na liście błędów domyślnie nie jest już wyświetlana diagnostyka zamkniętych plików JavaScript/TypeScript.
- Starsza wersja usługi językowej JavaScript nie jest już dostępna. Wcześniej użytkownicy mieli możliwość przywrócenia starszej wersji usługi językowej JavaScript. Teraz użytkownicy mają nową, gotową usługę językową JavaScript. Nowa usługa językowa jest oparta na usłudze językowej TypeScript, która korzysta z analizy statycznej. Zapewnia to lepsze narzędzia, dzięki którym kod JavaScript może korzystać z ulepszonej funkcji IntelliSense opartej na definicjach typów. Nowa usługa ma uproszczoną konstrukcję i zużywa mniej pamięci niż starsza wersja usługi, zapewniając użytkownikom lepszą wydajność w miarę rozrastania się kodu.
Program Team Explorer i usługa Azure DevOps
Wprowadziliśmy ulepszenia do środowiska elementów roboczych Git za pomocą usługi Azure DevOps.
- Przypisuj elementy robocze do siebie lub innych osób za pomocą nowego selektora tożsamości. Domyślnie będzie wyświetlana lista ostatnio używanych osób. Możesz również korzystać z możliwości wyszukiwania, aby znajdować inne osoby w Twojej organizacji.
- Ulepszyliśmy środowisko #wzmianek w komunikacie dotyczącym zatwierdzenia. Po wybraniu elementu roboczego za pomocą selektora #wzmianek zostanie on automatycznie dodany do listy Powiązane elementy robocze.
Wyróżnianie ścieżki gorącej
- Dodaliśmy obsługę wyróżniania ścieżek aktywnych w narzędziach Użycie procesora CPU i Przydzielanie obiektów DotNet w Profilerze wydajności. Wybierz dowolną funkcję w drzewie wywołań i naciśnij przycisk ścieżki aktywnej, aby rozwinąć ścieżkę aktywną Użycie procesora CPU lub Przydzielanie obiektów Dot Net. Ta funkcja umożliwia łatwe identyfikowanie wywołań funkcji, które zużywają najwięcej zasobów procesora CPU lub przydzielają większość obiektów.
Narzędzia .NET i ASP.NET
- Wprowadziliśmy różne drobne ulepszenia środowiska użytkownika na stronie podsumowania profilu publikowania (nowe nagłówki sekcji i akcje/skróty) dla wszystkich aplikacji.
- Podczas publikowania aplikacji platformy ASP.NET w usłudze Azure App Service na stronie podsumowania profilu publikowania znajduje się teraz nowa sekcja o nazwie „Zależności”. Ta nowa sekcja umożliwia obecnie skojarzenie zasobów usług Azure Storage i Azure SQL z wystąpieniem usługi aplikacji. W przyszłości należy spodziewać się udostępniania kolejnych usług platformy Azure za pomocą tego mechanizmu.
- Używaj w projektach .NET Core metryk kodu, korzystając z dodanej przez nas zgodności.
- Wyeksportuj ustawienia edytora do pliku Editorconfig za pomocą pozycji Narzędzia > Opcje > Edytor > tekstu Styl kodu języka C# > z przyciskiem "Generuj plik editorconfig z ustawień".
- Używaj nowej obsługi analizatora wyrażeń regularnych w języku C# i programie Visual Basic. Wyrażenia regularne są teraz rozpoznawane, a funkcje językowe są w nich włączone. Ciągi wyrażenia regularnego są rozpoznawane po ich przekazaniu do konstruktora wyrażeń regularnych lub gdy są bezpośrednio poprzedzone komentarzem zawierającym ciąg
language=regex
. Funkcje językowe zawarte w tej wersji to: klasyfikacja, parowanie nawiasów klamrowych, wyróżnianie odwołań i diagnostyka.
- Teraz możesz używać analizy martwego kodu w przypadku nieużywanych składowych prywatnych z opcjonalną poprawką kodu, aby usunąć nieużywaną deklarację elementu członkowskiego.
- Funkcja Znajdź odwołania w metodzie dostępu zwraca teraz wyniki tylko dla tej metody dostępu.
- Dodaliśmy poprawkę kodu umożliwiającą generowanie metody dekonstrukcji.
- Instrukcje „using” można dodawać po wklejeniu kodu do pliku. Poprawka kodu jest wyświetlana po wklejeniu rozpoznanego kodu powodującego wyświetlenie monitu o dodanie odpowiednich brakujących importów.
- Teraz dostępnych jest więcej refaktoryzacji i szybkich akcji za pomocą "Ctrl + ." lub "Alt + Enter":
- W przypadkach, gdy instrukcja „await” jest przewidywana, ale została pominięta, pojawia się teraz ostrzeżenie kompilatora.
- W przypadku konwertowania funkcji lokalnej na metodę.
- W przypadku konwertowania spójnej kolekcji na strukturę z nazwą.
- W przypadku konwertowania typu anonimowego na klasę.
- W przypadku konwertowania typu anonimowego na spójną kolekcję.
- W przypadku pętli foreach na zapytanie LINQ lub na metodę LINQ.
- Obecnie dodano obsługę aplikacji platformy ASP.NET Core działających w usłudze Azure Kubernetes Service. Aby rozpocząć pracę, zobacz ten przykład platformy docker w serwisie GitHub.
- Platforma ASP.NET jest teraz obsługiwana w narzędziu Użycie procesora CPU w Profilerze wydajności.
- Teraz możesz wyświetlać wyniki z plików Razor (cshtml) w projektach .NET Core, używając funkcji Znajdowanie wszystkich odwołań (Shift-F12) i CodeLens. Następnie możesz przejść do zidentyfikowanego kodu w odpowiednich plikach Razor.
- Dodaliśmy obsługę określania miejsca docelowego aplikacji (Core i klasyczna) ASP.NET uruchomionych na maszynach wirtualnych systemu Windows i w zestawach skalowania maszyn wirtualnych.
- Teraz podczas uruchamiania analizy kodu za pomocą programu FxCop będzie wyświetlane ostrzeżenie. Od teraz zalecanym sposobem obsługi analizy kodu są analizatory kompilatora .NET. Dowiedz się więcej na temat migracji do analizatorów platformy kompilatora .NET.
- Szablony projektów PCL (Portable Class Library) nie są już dostępne, a obsługa projektów nie będzie domyślnie instalowana. Nowe projekty przeznaczone dla wielu platform docelowych powinny używać typu projektu .NET Standard. Klienci, którzy potrzebują obsługi projektów PCL, muszą zainstalować składnik oddzielnie z karty Poszczególne składniki w instalatorze programu Visual Studio.
- Polecenie „Project.CopyWebSite” nie jest już dostępne. Ta funkcja była dostępna tylko w przypadku typu projektu „Witryna internetowa” dla platformy .NET. Umożliwiała ona synchronizowanie dwóch witryn internetowych, aby miały tę samą wersję każdego pliku. W programie Visual Studio 2019 możesz skopiować pliki ze zdalnego miejsca docelowego poza programem Visual Studio, a następnie otworzyć projekt.
- Możliwość otwierania projektu Witryna internetowa ze zdalnej lokalizacji FTP została usunięta. Użytkownicy protokołu FTP mogą skopiować pliki ze zdalnego miejsca docelowego poza programem Visual Studio, otworzyć projekt i wprowadzić zmiany, a następnie użyć funkcji publikowania, aby wypchnąć je z powrotem do zdalnej lokalizacji FTP.
- Obciążenie ASP.NET i sieć Web nie instaluje już niestandardowej kolekcji ustawień edycji CoffeeScript. Pakiety TextMate w programie Visual Studio zapewniają doskonałe środowisko do pracy z językiem CoffeeScript.
- Błędy arkuszy CSS i języka CoffeeScript, które obecnie są generowane przez wbudowane kopie CSSLint i CoffeeLint, nie będą już automatycznie wyświetlane podczas edycji tych plików. Używaj alternatywnej metody uruchamiania narzędzi typu linter, takiej jak npm lub program Visual Studio Task Runner Explorer.
- Program Visual Studio nie udostępnia już funkcji IntelliSense dla atrybutów HTML biblioteki Knockout. W programie Visual Studio 2019 musisz wpisać atrybuty.
- Możliwość debugowania kodu JavaScript przy użyciu debugera Legacy Chrome w projektach platformy ASP.NET została usunięta. W dalszym ciągu możesz używać aktualnego debugera Chrome wbudowanego w programie Visual Studio.
- Możliwość korzystania z funkcji konsoli języka JavaScript w projektach platformy ASP.NET została usunięta. Zalecamy klientom, aby używali konsoli dołączonej do narzędzi deweloperskich ulubionej przeglądarki.
Narzędzia kontenerów
- Dodaliśmy usprawnione środowisko jednoprojektowe na potrzeby konteneryzowania i debugowania:
- Aplikacje internetowe ASP.NET (.NET Framework)
- Aplikacje konsolowe (.NET Core)
- Dodaliśmy obsługę debugowania aplikacji ASP.NET Core korzystających z obrazu podstawowego Alpine.
- Dodaliśmy obsługę najnowszych obrazów ASP.NET i .NET Core.
Narzędzia platformy .NET Core
.NET Core 3.0
W tej wersji można tworzyć projekty ASP.NET Core, konsoli i biblioteki klas przeznaczone dla platformy .NET Core 3.0, jeśli masz zainstalowany zestaw SDK w wersji zapoznawczej.
Jeśli używasz programu Visual Studio RC, musisz również przejść do pozycji Narzędzia > Opcje > projektów i rozwiązań > platformy .NET Core i zaznacz pole wyboru Użyj wersji zapoznawczych zestawów SDK platformy .NET Core. Jeśli używasz programu Visual Studio w wersji zapoznawczej, nie musisz tego robić. Aby uzyskać więcej informacji o tym ustawieniu i jego zachowaniu, zobacz .NET Core tooling update for Visual Studio 2017 version 15.9 (Aktualizacja narzędzi .NET Core dla programu Visual Studio 2017 w wersji 15.9).
Można również utworzyć projekty Windows Forms lub WPF dla platformy .NET Core 3.0 za pomocą polecenia „dotnet new”. Te projekty można następnie otwierać w programie Visual Studio 2019.
Nowe funkcje
Począwszy od tej wersji, pliki projektu dla projektów w stylu zestawu SDK .NET stają się najwyższej jakości typem pliku w programie Visual Studio. Obsługiwane są teraz następujące funkcje:
- Dwukrotne kliknięcie węzła projektu w celu otwarcia pliku projektu
- Pojedyncze kliknięcie węzła projektu w celu otwarcia pliku projektu na karcie Podgląd
- Znalezienie pliku projektu według nazwy za pomocą funkcji Przejdź do wszystkich (
ctrl + T
) - Elementy programu MSBuild w pliku projektu można teraz wyszukiwać za pomocą funkcji Znajdź w plikach
- Otwieranie z listy błędów po wyzwoleniu błędu tworzenia projektu
Ponadto projekty w stylu zestawu SDK .NET będą teraz korzystały ze środowiska nowej konsoli zintegrowanej dla funkcji F5
i ctrl + F5
w aplikacjach konsoli. Ujednolici to obsługę podczas uruchamiania aplikacji konsoli w programie Visual Studio:
- W przypadku funkcji
F5
okno konsoli nie zostanie automatycznie zamknięte po zakończeniu wykonywania aplikacji. Nie musisz już dodawać wywołańConsole.Read()
do aplikacji konsolowych. - W przypadku funkcji
ctrl + F5
okno konsoli będzie ponownie używane w kolejnych uruchomieniach aplikacji. Nie musisz już zamykać załadowanych okien konsoli.
Nowe okno konsoli można zamknąć automatycznie, naciskając po jego otwarciu lub wybierając opcję w obszarze Opcje > narzędzi > Automatycznie zamknij konsolę po zatrzymaniu debugowania.
Funkcja obsługi wyrażeń licencji i plików licencji została dodana do stron właściwości projektu. Jest to zgodne ze decyzją o wycofaniu licencji licenseUrl
w pakiecie NuGet.
usprawnienia dotyczące wydajności
- Skalowalność dużych rozwiązań uległa znaczącej poprawie, umożliwiając użycie znacznie większych rozwiązań platformy .NET Core niż wcześniej.
- Czas ładowania rozwiązania dla dużych projektów został znacząco skrócony, zmniejszone zostało także użycie procesora CPU pamięci podczas ich ładowania.
Równoważność funkcji w projektach innych niż .NET Core
- Tym, co od dłuższego czasu sprawiało problem użytkownikom, był fakt, że zmiany konfiguracji nie były respektowane w czasie projektowania, co wymuszało ponowne ładowanie projektu. Ten problem został rozwiązany.
- Teraz istnieje możliwość przejścia do definicji ze składni Razor do języka C# w projektach ASP.NET Core.
- Są teraz obsługiwane również elementy AvailableItemName.
- Obsługiwana jest też funkcja automatycznego zagnieżdżania plików zależnych, które są dodawane do projektu przy użyciu symboli wieloznacznych.
- Obsługa polecenia XamlAppDef została dodana przez użytkownika William Kent.
Pełna lista problemów i żądań ściągnięcia znajduje się w obszarze kamieni milowych 16.0, 16.0 (wersja zapoznawcza 2), 16.0 (wersja zapoznawcza 3) oraz 16.0 (wersja zapoznawcza 4).
Produktywność platformy .NET
Refaktoryzacje i poprawki kodu platformy .NET:
- Synchronizowanie przestrzeni nazw i nazwy folderu
- Refaktoryzowanie ściągania elementów członkowskich przy użyciu opcji okna dialogowego
- Zawijanie/wcinanie/wyrównywanie list parametrów/argumentów
- Konwertowanie typu anonimowego na krotkę
- Korzystanie z treści wyrażenia/bloku w przypadku architektury lambda
- Odwracanie wyrażeń warunkowych i operacji logicznych
- Automatyczne zamykanie komentarza bloku po znaku „/”
- Konwertowanie na przydział złożony
- Zmienne poprawki o typie określonym niejawnie nie mogą być stałymi
- Automatyczny program naprawiający, który podczas wpisywania interpolowanego ciągu dosłownego wyrażenia zastępuje ciąg
@$"
ciągiem$@"
- Uzupełnianie parametru
#nullable enable|disable
- Poprawka dotycząca nieużywanych parametrów i wartości wyrażeń
- Poprawka umożliwiająca pozostawienie refaktoryzacji Wyodrębnij interfejs w tym samym pliku
Klasyfikuj odwołania według odczytu/zapisu.
Dodaj opcję Editorconfig when_multiline dla csharp_prefer_braces.
Dostępne są nowe kolory klasyfikacji z zestawu SDK platformy kompilatora .NET (Roslyn). Nowe kolory domyślne, podobne do kolorów programu Visual Studio Code, są stopniowo wdrażane. Te kolory można dostosować w obszarze Narzędzia > Opcje > > Czcionki środowiska i kolory lub wyłączyć je w obszarze Funkcje wersji zapoznawczej środowiska>, usuwając zaznaczenie pola wyboru Użyj kolorów rozszerzonych. Będziemy wdzięczni za opinię, jak ta zmiana wpływa na przepływ pracy.
Debugowanie języka JavaScript w projektach ASP.NET
- Jeśli za pomocą menu „Przeglądaj w...” dla projektu platformy ASP.NET została dodana nowa przeglądarka Google Chrome z niestandardowymi argumentami, po uruchomieniu debugowania program Visual Studio umożliwi debugowanie kodu JavaScript dla aplikacji. Podczas uruchamiania przeglądarki Chrome zostaną zastosowane niestandardowe argumenty uruchamiania.
ASP.NET i narzędzia usługi Azure Functions
- Program Visual Studio 2019 zawiera nowe środowisko do tworzenia nowych projektów. W szczególności podczas tworzenia nowych projektów ASP.NET program Visual Studio oferuje dodatkowe okna dialogowe zawierające opcje specyficzne dla platformy ASP.NET. Te dodatkowe okna dialogowe zostały zaktualizowane, aby dopasować je do stylu wizualnego reszty środowiska.
- Od pewnego czasu poświadczenia publikowania w programie Visual Studio są szyfrowane i przechowywane w pliku użytkownika profilu publikowania, więc nie trzeba ich ponownie wprowadzać za każdym razem, gdy publikujesz aplikację. Ogólnie rzecz biorąc, pliki użytkowników są domyślnie wykluczane z kontroli źródła, ponieważ mogą zawierać poufne i/lub osobiste informacje, których nie należy udostępniać. Do tej pory w przypadku zaewidencjonowania profilu publikowania projektu usługi Azure Functions w systemie kontroli źródła bez pliku użytkownika brakowało poświadczeń publikowania i nie można było ponownie używać profilu publikowania. Obecnie zezwalamy na edytowanie poświadczeń i utworzenie nowego pliku użytkownika, dzięki czemu można ponownie używać profilu publikowania.
Kreator Wydajności
W programie Visual Studio 2019 środowiska profilowania, które były dostępne w Kreatorze wydajności, zostały przeniesione do Profilera wydajności. W Profilerze wydajności możesz znaleźć narzędzie Użycie procesora CPU do próbkowania, a instrumentację — w narzędziu Instrumentacja. Dzięki tej zmianie Kreator wydajności nie jest już potrzebny i został usunięty z programu Visual Studio 2019. Ponadto opcja próbkowania wydajności w narzędziach wiersza polecenia programu VS Performance została usunięta. Zastępujące ją narzędzie wiersza polecenia zostanie wydane w nadchodzącej wersji zapoznawczej.
Narzędzia testowe
- W celu uruchamiania lub debugowania testów użytkownik może teraz kliknąć prawym przyciskiem myszy testy, klasy testowe lub projekty testowe w Eksploratorze rozwiązań.
- Przebiegi testu teraz automatycznie wykrywają architekturę procesora, jaka jest ustawiona we właściwościach projektu.
- Narzędzia testowe interfejsu użytkownika OSS, takie jak Selenium i Appium,zaczęły się szybko rozwijać i mają silne wsparcie ze strony społeczności. Ponieważ te struktury stały się standardami branżowymi, wycofaliśmy kodowany test interfejsu użytkownika dla zautomatyzowanego testowania funkcjonalnego opartego na interfejsie użytkownika. Visual Studio 2019 będzie ostatnią wersją programu Visual Studio wyposażoną w funkcje kodowanego testu interfejsu użytkownika. Zalecamy korzystanie ze środowiska Selenium do testowania aplikacji internetowych i Appium z WinAppDriver do testowania aplikacji klasycznych i aplikacji platformy uniwersalnej systemu Windows.
- Visual Studio 2019 będzie ostatnią wersją programu Visual Studio wyposażoną w funkcje testów obciążeniowych. Klientom potrzebującym narzędzi do testowania obciążenia zalecamy korzystanie z alternatywnych narzędzi do testowania obciążenia, takich jak Apache JMeter, Akamai CloudTest czy Blazemeter.
- W programie Visual Studio 2019 usunięto część interfejsów API okna testowego, które wcześniej były oznaczone jako publiczne, ale nigdy nie zostały oficjalnie udokumentowane. W programie Visual Studio 2017 zostały one oznaczone jako przestarzałe, aby zawczasu ostrzec osoby obsługujące rozszerzenia. O ile nam wiadomo, bardzo mało rozszerzeń było uzależnionych od tych interfejsów API. Te interfejsy API to między innymi IGroupByProvider, IGroupByProvider, KeyComparer, ISearchFilter, ISearchFilterToken, ISearchToken i SearchFilterTokenType. Jeśli ta zmiana ma wpływ na Twoje rozszerzenie, daj nam znać, wysyłając zgłoszenie problemu do społeczności deweloperów.
Narzędzia platformy Kubernetes w programie Visual Studio
Narzędzia platformy Kubernetes w programie Visual Studio, które były wcześniej dostępne jako osobne rozszerzenie programu Visual Studio 2017, są teraz zintegrowane z obciążeniem Programowanie na platformie Azure w programie Visual Studio 2019.
Dodawanie obsługi platformy Kubernetes do nowego projektu
Aby dodać obsługę platformy Kubernetes do nowego projektu, otwórz program Visual Studio i wybierz opcję Utwórz nowy projekt. W oknie Tworzenie nowego projektu wyszukaj pozycję Kubernetes i wybierz szablon projektu Aplikacja kontenera dla platformy Kubernetes.
Kliknij pozycję Dalej, a następnie wprowadź nazwę projektu, lokalizację i nazwę rozwiązania. Następnie kliknij pozycję Utwórz. Wybierz szablon aplikacji ASP.NET Core, który ma być używany w przypadku projektu, a następnie kliknij przycisk OK. Program Visual Studio automatycznie utworzy plik Dockerfile i wykres Helm, które umożliwią skompilowanie i wdrożenie nowej aplikacji w klastrze Kubernetes. Możesz modyfikować te artefakty w zależności od potrzeb.
Dodawanie obsługi platformy Kubernetes do istniejącego projektu
Obsługę platformy Kubernetes możesz również dodać do istniejącej aplikacji ASP.NET Core. Aby to zrobić, otwórz projekt w programie Visual Studio 2019. W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy projekt, wskaż pozycję Dodaj i kliknij pozycję Obsługa orkiestratora kontenerów.
W oknie dialogowym Dodawanie obsługi orkiestratora kontenerów wybierz pozycję Kubernetes/Helm i kliknij przycisk OK. Program Visual Studio automatycznie utworzy plik Dockerfile i wykres Helm (w folderze o nazwie charts), które umożliwią skompilowanie i wdrożenie nowej aplikacji w klastrze Kubernetes. Jeśli te artefakty znajdują się już w tym miejscu, nie zostaną one zastąpione. Możesz modyfikować te artefakty w zależności od potrzeb.
Tworzenie publicznie dostępnego punktu końcowego
Po dodaniu obsługi platformy Kubernetes do nowego lub istniejącego projektu program Visual Studio zapyta, czy chcesz utworzyć publicznie dostępny punkt końcowy dla swojej aplikacji.
Jeśli klikniesz pozycję Tak, program Visual Studio skonfiguruje wykres Helm dla Twojej aplikacji, aby utworzyć obiekt ruchu przychodzącego platformy Kubernetes podczas wdrażania aplikacji w klastrze Kubernetes. W dowolnym momencie możesz zmienić tę opcję, modyfikując wykres Helm.
Debugowanie aplikacji w usłudze Azure Kubernetes Service
Po dodaniu obsługi platformy Kubernetes do nowego lub istniejącego projektu możesz z łatwością kompilować, uruchamiać i debugować aplikację w klastrze na żywo usługi Azure Kubernetes Service (AKS), używając funkcji o nazwie Azure Dev Spaces. Jest to przydatne do testowania projektu w kontekście rzeczywistego klastra Kubernetes lub debugowania usługi, która jest częścią znacznie większej aplikacji, bez konieczności replikowania całej aplikacji w środowisku lokalnym. Usługa Azure Dev Spaces obejmuje również funkcję umożliwiającą zespołowi deweloperów udostępnianie klastra AKS. Więcej informacji na temat usługi Azure Dev Spaces można znaleźć w dokumentacji usługi Azure Dev Spaces. Aby rozpocząć pracę, upewnij się, że usługa Azure Dev Spaces jest wybrana jako element docelowy uruchamiania debugowania w programie Visual Studio.
Zanim po raz pierwszy uruchomisz projekt w usłudze Dev Spaces, skonfiguruj subskrypcję platformy Azure i klaster AKS, których chcesz użyć. Wybierz także miejsce, w którym chcesz uruchomić projekt.
Zazwyczaj Twój zespół uruchamia najnowszą stabilną wersję całej aplikacji w domyślnym miejscu. Następnie uruchamiasz swoją wersję usługi, nad którą pracujesz, w przestrzeni podrzędnej domyślnego miejsca. Obecnie nie ma potrzeby uruchamiania innych usług w przestrzeni podrzędnej. Usługa Dev Spaces automatycznie kieruje wywołania z usługi do stabilnych wersji usług działających w domyślnym miejscu. Aby uzyskać więcej informacji na temat sposobu konfigurowania tej funkcji, zobacz samouczki dotyczące tworzenia zespołów w dokumentacji usługi Azure Dev Spaces. Po wybraniu poprawnej subskrypcji, klastra i miejsca kliknij przycisk OK, aby kontynuować konfigurację usługi Dev Spaces. Jeśli wybierzesz klaster, z którym nie jest jeszcze skojarzony kontroler usługi Dev Spaces, kliknij przycisk OK w poniższym oknie dialogowym, aby automatycznie go utworzyć.
Utworzenie kontrolera zajmuje około 2 minut. Możesz kliknąć przycisk Zadania w tle w lewym dolnym rogu okna programu Visual Studio, aby wyświetlić stan.
Gdy kontroler usługi Dev Spaces jest gotowy do użytku, naciśnij klawisz F5 lub kliknij przycisk debugowania w usłudze Azure Dev Spaces na pasku narzędzi, aby przeprowadzić debugowanie projektu w usłudze AKS.
Usługa Dev Spaces zsynchronizuje kod z platformą Azure, skompiluje obraz kontenera zawierający Twój kod i wdroży go w klastrze usługi AKS, używając wykresu Helm zdefiniowanego w projekcie. Program Visual Studio otworzy zdalne połączenie debugowania z usługą uruchomioną w klastrze, aby umożliwić interakcję z nią w taki sam sposób jak podczas debugowania usługi uruchomionej w środowisku lokalnym.
Tworzenie aplikacji mobilnych w środowisku Xamarin
Ta wersja zawiera ulepszenia dotyczące rozmiaru obciążenia oraz wydajności i niezawodności kompilacji systemu Android, a także ulepszenia wydajności platform Xamarin.Android i Xamarin.Forms.
- Obciążenie na platformie Xamarin wynosi teraz zaledwie 7,69 GB, co oznacza 2-krotną redukcję w porównaniu z programem Visual Studio 2017 w wersji 15.9 i 3-krotną względem wersji 15.7.
- Rozszerzenie IntelliCode obsługuje teraz język XAML platformy Xamarin.Forms.
Plik > nowy projekt
Wprowadziliśmy ulepszenia wydajności mające na celu skrócenie czasu tworzenia nowego projektu platformy Xamarin, aby można było szybciej rozpoczynać kompilowanie aplikacji. Teraz dodaliśmy również pakiety NuGet używane przez szablony jako część instalacji obciążenia, aby skrócić czas przywracania pakietów, szczególnie w przypadku niskiej przepustowości lub pracy w trybie offline. Te ulepszenia w niektórych przypadkach skracają czas pełnego ładowania i przywracania nowego projektu platformy Xamarin prawie o 50%.
Wskaźnik postępu kompilacji
Podczas kompilowania projektów możesz teraz wyświetlać bardziej szczegółowe informacje o postępie kompilacji. Kliknięcie ikony zadań w tle w lewym dolnym rogu podczas kompilacji spowoduje wyświetlenie bieżącej lokalizacji docelowej kompilacji, która jest uruchomiona. Może to być przydatne do określania, czy kompilacja jest wciąż uruchomiona, ale ukończenie obiektu docelowego trwa bardzo długo.
Tryb podglądu podstawowego programu podglądu zestawu narzędzi Xamarin.Forms
Nie trzeba już kompilować projektu, aby wyświetlić podgląd kodu w programie Xamarin.Forms XAML Previewer! Jeśli masz kontrolki niestandardowe w pliku XAML, konieczne może być skompilowane projektu, aby wyświetlić ich podgląd lub zdecydować się na renderowanie w czasie projektowania.
Lista rozwijana urządzenia podglądu zestawu narzędzi Xamarin.Forms
Możesz teraz przełączać się pomiędzy różnymi urządzeniami z systemami Android lub iOS, aby wyświetlać podgląd kodu XAML zestawu Xamarin.Forms, używając nowego menu rozwijanego urządzeń.
Panel właściwości zestawu narzędzi Xamarin.Forms
Teraz możesz edytować najczęściej używane atrybuty kontrolek, komórek i układów platformy Xamarin.Forms w panelu właściwości oraz natychmiast wyświetlać te zmiany w pliku XAML.
Szablon powłoki platformy Xamarin.Forms
Zaktualizowaliśmy szablony zestawu narzędzi Xamarin.Forms, tak aby używały najnowszej wersji platformy Xamarin.Forms, a także dodaliśmy nową opcję szablonu aplikacji Xamarin.Forms Shell. Aplikacja Shell ma za zadanie zmniejszyć złożoność aplikacji przy jednoczesnym zwiększeniu produktywności deweloperów i skoncentrowaniu się na szybkości renderowania i zużyciu pamięci. Ten szablon zapewnia uruchomioną aplikację Shell dla systemów Android i iOS.
Wydajność i niezawodność kompilacji systemu Android
W programach Visual Studio 2017 w wersji 15.9 i Visual Studio dla komputerów Mac 7.7 wprowadziliśmy wstępne ulepszenia wydajności i poprawności kompilacji. W programach Visual Studio 2019 i Visual Studio dla komputerów Mac 7.8 kompilowanie i wdrażanie stało się jeszcze szybsze.
- Teraz będziesz korzystać z narzędzi do tworzenia pakietów nowej generacji w systemie Android. Aby włączyć tę funkcję, dodaj flagę MSBuild w projekcie
.csproj
:- pakiet aapt2 dzieli pakiet systemu Android na dwa kroki: Kompilowanie i łączenie. Zwiększa to wydajność kompilacji przyrostowych i zapewnia wcześniejsze raportowanie błędów. Na przykład w przypadku zmian w jednym pliku wystarczy ponownie skompilować ten plik.
<AndroidUseAapt2>True</AndroidUseAapt2>
- pakiet aapt2 dzieli pakiet systemu Android na dwa kroki: Kompilowanie i łączenie. Zwiększa to wydajność kompilacji przyrostowych i zapewnia wcześniejsze raportowanie błędów. Na przykład w przypadku zmian w jednym pliku wystarczy ponownie skompilować ten plik.
- Włączenie tego narzędzia w Twoich projektach powoduje zwiększenie wydajności w czasie kompilacji i w środowisku uruchomieniowym. Aby uzyskać szczegółowe informacje na temat tych właściwości, zobacz naszą dokumentację w artykule Proces kompilacji na platformie Xamarin.Android.
Ulepszenia emulatora systemu Android
W programie Visual Studio 2019 łatwiej tworzyć obrazy emulatora systemu Android. Wciąż współpracujemy także z zespołem Windows w ramach aktualizacji systemu Windows 10 z października 2018 r. (wersja 1809), aby zwiększyć wydajność emulatora systemu Android, gdy jest on uruchamiany w funkcji Hyper-V.
- Nowi użytkownicy mogą utworzyć swój pierwszy obraz, naciskając po prostu ikonę uruchamiania.
- Nasze środowisko uzyskiwania emulatora automatycznie określa najlepszą konfigurację ustawień oraz domyślnie wykorzystuje przyspieszanie sprzętowe (za pomocą aparatu Intel HAXM lub funkcji Hyper-V) i szybki rozruch.
- Gdy chcesz utworzyć inny obraz, możesz z listy rozwijanej wybrać pozycję Utwórz emulator systemu Android, aby otworzyć Menedżera urządzeń systemu Android.
Skracanie czasów kompilacji dzięki ulepszeniom kompilacji na platformie Xamarin.Android
Opublikowaliśmy zestaw wstępnych ulepszeń wydajności kompilacji. Dostępna obecnie platforma Xamarin.Android 9.1.1+ zawiera istotne ulepszenia wydajności kompilacji w porównaniu z poprzednią wersją. Aby uzyskać więcej szczegółów, zapoznaj się z naszym porównaniem wydajności kompilacji platformy Xamarin.Android 15.9 i 16.0.
Ulepszone szybkie wdrażanie dla platformy Xamarin.Android
Szybkie wdrażanie zapewniało do tej pory krótsze czasy wdrażania przyrostowego dzięki pomijaniu przebudowywania lub ponownego wdrażania pakietu systemu Android (pliku apk) w scenariuszach, w których do jakichkolwiek aktywów, zasobów, udostępnionych bibliotek natywnych spakowanych z aplikacją czy klas zdefiniowanych przez użytkownika, dziedziczących z obiektu Java.Lang.Object
nie zostały wprowadzone żadne zmiany.
Ulepszone szybkie wdrażanie rozszerza obsługę szybkiego wdrażania na udostępnione biblioteki natywne i klasy dziedziczące z obiektu Java.Lang.Object
. Kompilacje szybkiego wdrażania, które korzystają z tych nowych ulepszeń, muszą wygenerować nowy plik apk jedynie w ograniczonej liczbie scenariuszy, na przykład gdy plik AndroidManifest.xml ulega zmianie ze względu na dodanie nowej klasy podrzędnej Android.App.Application
lub Activity
.
Te ulepszenia nie są jeszcze domyślnie włączone w bieżącej wersji zapoznawczej. Aby je włączyć, ustaw właściwość $(AndroidFastDeploymentType)
programu MSBuild na Assemblies:Dexes
w swoim pliku csproj:
<PropertyGroup>
<AndroidFastDeploymentType>Assemblies:Dexes</AndroidFastDeploymentType>
</PropertyGroup>
Obsługa następnej generacji narzędzi Dex Compiler(d8) i Code Shrinker(r8) na platformie Xamarin.Android
Platforma Xamarin.Android obsługuje teraz najnowsze wersje kompilatora plików dex (d8) i narzędzia do zmniejszania objętości kodu (r8) dla systemu Android.
Aby włączyć te funkcje, ustaw właściwości $(AndroidDexTool)
i $(AndroidLinkTool)
programu MSBuild odpowiednio na d8
i r8
w swoim pliku csproj
- d8 to kompilator plików dex następnej generacji, który działa szybciej i generuje mniejsze pliki dex dzięki lepszej wydajności środowiska uruchomieniowego.
<PropertyGroup>
<AndroidDexTool>d8</AndroidDexTool>
</PropertyGroup>
- r8 to nowe narzędzie do zmniejszania i minimalizowania, które konwertuje kod bajtowy Java na zoptymalizowany kod dex, co eliminuje potrzebę korzystania z narzędzia ProGuard.
<PropertyGroup>
<AndroidLinkTool>r8</AndroidLinkTool>
</PropertyGroup>
Aby uzyskać szczegółowe informacje na temat narzędzi d8 i r8, zapoznaj się z naszą dokumentacją.
Ulepszenia projektanta platformy Xamarin.Android
Wprowadziliśmy wiele udoskonaleń produktywności do interakcji w widoku podzielonym.
- Przeciągaj i upuszczaj bezpośrednio z przybornika do edytora źródła, aby ułatwić sobie szybkie tworzenie szkieletu układów dla systemu Android.
- Wybieraj elementy bezpośrednio z poziomu ich zakresu definicji XML w edytorze źródła. Wprowadziliśmy to, synchronizując położenie daszka z odpowiednim widokiem systemu Android, co pozwala na szybki dostęp do właściwości elementu w panelu właściwości bezpośrednio z poziomu edytora.
- Używaj wbudowanego podglądu kolorów w kodzie XML, aby zobaczyć, jakie kolory są używane w Twoich kontrolkach.
- Używaj naszej funkcji szybkich informacji, umieszczając kursor nad wartością, aby dowiedzieć się o niej więcej, np. gdzie jest ona zdefiniowana lub jaka jest wartość szesnastkowa koloru.
Ulepszenia projektanta interfejsu Xamarin.Android z początkową obsługą układów ograniczeń
Rozpoczęliśmy starania o zwiększenie szybkości uruchamiania narzędzia Android Designer. W ramach tego procesu ulepszyliśmy także obsługę komunikatów wyświetlanych w projektancie podczas ładowania.
Oprócz tych ulepszeń narzędzie Android Designer natywnie obsługuje teraz usługę Android Pie (9.0) i zapewnia automatyczne uzupełnianie atrybutów ConstraintLayout
.
Uzyskiwanie lepszej funkcji IntelliSense XML i optymalizacji komentowania za pomocą narzędzia Xamarin.Android Designer
W przypadku dodawania widgetu do układu za pomocą funkcji IntelliSense udostępniane jest teraz pełne środowisko fragmentów kodu, które umożliwia dostarczanie wymaganych atrybutów od samego początku. Dodaliśmy inteligentne komentowanie i usuwanie komentarzy dla układów XML systemu Android.
Wydajniejsze korzystanie z funkcji Przejdź do definicji i używanie funkcji IntelliSense XML w plikach zasobów systemu Android i AndroidManifest.xml
Teraz możesz używać kombinacji Ctrl + kliknięcie na adresach URL zasobów, aby przechodzić do pliku lub wiersza, w których są one zdefiniowane.
Funkcja IntelliSense/automatyczne uzupełnianie są teraz obsługiwane w przypadku plików XML systemu Android innych niż układy (kolory, ciągi, obiekty rysowalne, menu, manifest systemu Android itp.).
Platforma uniwersalna systemu Windows
- Rozszerzenie IntelliCode obsługuje teraz język XAML.
- Aby zmniejszyć złożoność i rozmiar konfiguracji programu Visual Studio, emulatory systemu Windows Phone zostały usunięte z instalacji programu Visual Studio. Teraz musisz pobrać emulatory ręcznie.
- Narzędzia czasu projektowania XAML dla aplikacji platformy UWP przeznaczonych dla zestawów SDK systemu Windows 10 sprzed jesiennej aktualizacji systemu Windows 10 dla twórców (kompilacja 16299) zostały usunięte. Przekieruj aplikacje do systemu Windows 10 w wersji 1709 lub nowszej, aby używać projektanta XAML, lub użyj edytora XAML.
- Projekty testowe platformy uniwersalnej systemu Windows definiujące zależności NuGet przy użyciu pliku
project.json
nie są już obsługiwane. Musisz uaktualnić swój projekt, aby korzystać z nowego formatuPackageReference
. - Aplikacje JavaScript platformy uniwersalnej systemu Windows nie są już obsługiwane w programie Visual Studio 2019. Nie możesz tworzyć ani otwierać projektów platformy uniwersalnej systemu Windows w języku JavaScript (pliki z rozszerzeniem
jsproj
). Więcej informacji możesz znaleźć w naszej dokumentacji dotyczącej tworzenia progresywnych aplikacji internetowych (PWA), które dobrze działają w systemie Windows. - Nadal możesz dołączać aplikację platformy UWP w języku JavaScript tak jak wcześniej, jednak narzędzia profilujące języka JavaScript (profilery sieci, procesora CPU i pamięci) nie są już dostępne w programie Visual Studio 2019.
Aktualizacje szablonów narzędzi pakietu Office
W programie Visual Studio 2019 wprowadziliśmy kilka zmian do szablonów pakietu Office, programu SharePoint i narzędzi VSTO.
- Szablony programu SharePoint 2019, które zostały dodane w programie Visual Studio 2017 w wersji 15.9, są również dostępne w programie Visual Studio 2019.
- Usunęliśmy obsługę sekwencyjnego przepływu pracy lub przepływów pracy komputera stanu w programie SharePoint. Chociaż nie będzie możliwe tworzenie i otwieranie tych przepływów pracy w programie Visual Studio 2019, w dalszym ciągu możesz edytować je w poprzednich wersjach programu Visual Studio.
- Szablony pakietu Office 2010 nie będą już dostępne. Jednak nadal możesz otwierać istniejące projekty pakietu Office 2010 w programie Visual Studio 2019.
- Nazwy szablonów pakietów Office 2013 i 2016 zostały zmienione, aby odzwierciedlały fakt, że obsługują one pakiet Office 2013 i nowsze.
Program Team Explorer i usługa Azure DevOps
Publikujemy nowe, zoptymalizowane środowisko skoncentrowane na deweloperach podczas nawiązywania połączenia programu Team Explorer z projektem usługi Azure DevOps.
Skup się na istotnych elementach roboczych, filtrując i przestawiając widok w oparciu o elementy robocze przypisane do Ciebie, wykonywane przez Ciebie, wzmiankujące Cię w dyskusji i oparte na Twoich działaniach.
- W każdym widoku możesz utworzyć wbudowany element roboczy, przeprowadzić proste edycje w tekście, oznaczyć element roboczy jako ukończony i skojarzyć element roboczy z oczekującymi zmianami.
Utwórz lokalną gałąź z elementu roboczego, który będzie automatycznie wiązał element roboczy ze zmianami wprowadzonymi w tej gałęzi lokalnej. Jest to środowisko domyślne. Jeśli zechcesz przełączyć się na starsze środowisko, możesz to zrobić, ustawiając środowisko Elementy robocze w programie Visual Studio. Pamiętaj, że to nowe środowisko dotyczy tylko repozytoriów Git. Nowe środowisko repozytoriów TFVC będzie dostępne w następującej aktualizacji.
Wyszukuj elementy robocze, robiąc #wzmiankę w komunikacie dotyczącym zatwierdzenia oczekujących zmian. Aby uzyskać więcej szczegółów, zobacz stronę Wyświetlanie i dodawanie elementów roboczych przy użyciu środowiska Elementy robocze.
Obsługa programu Microsoft Project została usunięta z wtyczki Team Foundation Server Office Integration 2019 dla programu Visual Studio 2019 ze względu na niski wskaźnik wdrażania w usłudze Azure DevOps. Teraz musisz wyeksportować elementy robocze do programu Excel i ręcznie wkleić je do projektu.
Obsługa programu PowerPoint została usunięta z wtyczki Team Foundation Server Office Integration 2019 dla programu Visual Studio 2019. Jednak użytkownicy w dalszym ciągu mogą tworzyć scenorysy w programie PowerPoint i łączyć je ręcznie z elementami roboczymi w usłudze Azure DevOps.
Usługa Application Insights i platforma HockeyApp
- Okno narzędzia Trendy usługi Application Insights zostało usunięte z programu Visual Studio 2019 na rzecz rozwiązań alternatywnych, które zawierają bardziej rozbudowane funkcje. Zamiast tego możesz używać okna wyszukiwania usługi Application Insights w programie Visual Studio lub bogatego zestawu narzędzi diagnostycznych w usłudze Application Insights w witrynie Azure Portal.
- Kreatorzy dodawania zestawu SDK usługi HockeyApp i tworzenia nowych dystrybucji wersji beta zostali usunięci. Zamiast tego zalecamy korzystanie z platformy Visual Studio App Center będącej następczynią usługi HockeyApp. W dalszym ciągu możesz normalnie korzystać z usługi HockeyApp, ale bez tych skrótów w programie Visual Studio.
Problemy rozwiązane w programie Visual Studio 2019 RC
ostatnia aktualizacja: 26 kwiecień 2019 r.
- wartość nie może być równa null. Nazwa parametru: pUnk podczas ewidencjonowania kodu do serwera TFS.
- „Projektant podtypów” jest niepotrzebnie dodawany do plików opartych na formacie xml, takich jak csproj.
- TLS 1.0: Żądanie zostało przerwane: nie można utworzyć bezpiecznego kanału SSL/TLS.
- Solution Explorer: touch pad gesture scroll is too sensitive (Eksplorator rozwiązań: gest przewijania płytki dotykowej jest zbyt czuły).
- [MSConnect 1173006] Na liście zadań z filtrem ustawionym na Całe rozwiązanie po zamknięciu pliku nie są wyświetlane zadania/zadania do wykonania.
- Rozszerzenie Xamarin.iOS nie może wybrać zasobu obrazu do widoku obrazu.
- błąd krytyczny C1001: Wystąpił błąd wewnętrzny w kompilatorze.
- Visual Studio 2019 — EF6 edmx文件无法保存-VS 2019 w wersji zapoznawczej 1 — Nie można zapisać pliku EF6 edmx.
- [WebKit]: niezdefiniowana klasa nie jest dozwolona jako argument o charakterystyce wewnętrznego typu „__is_assignable” kompilatora (regresja).
- Visaul Studio 2019: menedżer pakietów nuget ma niski kontrast.
- Team Explorer — zmiany: rozmiar panelu nie jest dostosowywany do okna programu Team Explorer.
- Lista serwerów w Eksploratorze obiektów SQL Server w programie Visual Studio 2017 nie jest zachowywana.
- problemy z funkcją IntelliSense w trybie linux-x64.
- Indeks poza zakresem. Musi być nieujemna i mniejsza niż rozmiar kolekcji. Nazwa parametru: indeks.
- Polecenie COFNIJ w programie Visual Studio 2017 nie działa/przestaje działać (zgłoszone PONOWNIE!!!) .
- Funkcja IntelliSense nie działa dla plików utworzonych w funkcji Podsystem Windows dla systemu Linux.
- Błąd funkcji IntelliSense: Inicjowanie statycznej składowej constexpr języka C++11 powoduje, że "element członkowski może nie zostać zainicjowany".
- Program VS nie przywraca położenia okna podczas włączania i wyłączania debugowania.
- Elementy przybornika innych firm są ładowane ponownie podczas każdego uruchomienia programu VS2019 2.2 (w wersji zapoznawczej).
- Polecenie „Set as StartUp Project” („Skonfiguruj jako projekt startowy”) powoduje awarię środowiska IDE po aktualizacji do wersji VS 2019 (wersja zapoznawcza) w wersji 3.
- Kompilowanie projektów w języku C++ z programu Visual Studio 2017 kończy się niepowodzeniem w programie Visual Studio 2019.
- Rozwiązano problem z odświeżaniem przybornika.
- Pliki vssettings tworzone przez kontrolki przybornika są zbyt duże.
- SSDT: Poprawka błędów niepowodzenia logowania podczas wykonywania funkcji porównywania nowych danych.
- SSDT: Poprawka błędu source jest niedostępna podczas wykonywania porównania schematu.
- SSDT: Poprawka dotycząca skryptu generowania porównania schematu nie generuje skryptu .
- Irytujący komunikat interfejsu użytkownika wyszukiwania w plikach „Znajdowanie następnego dopasowania”.
- Funkcja wyszukiwania plików domyślnie powraca do bieżącego dokumentu.
- Podręczne wykazy blokują program VS 2019 RC.
- PackageId:MsSqlCmdLnUtils;PackageAction:Install;ReturnCode:1603;.
- Na liście błędów nie są wyświetlane błędy, ponieważ ma ona zakres „Bieżący dokument”.
- Nie można użyć warunkowego punktu przerwania dla wartości PropertyInfo.Name.
- Program Visual Studio ulega awarii podczas analizowania makr na końcu pliku.
- Wyszukiwanie w programie Visual Studio 2019 jest bardzo powolne.
- Program Visual Studio zawiesza się podczas uruchamiania debugowania.
- Pliki vdproj nie są obsługiwane w programie Visual Studio 2019 RC.
- Obraz powitalny instalatora programu Visual Studio zawiera obraźliwy element w kulturze chińskiej.
- Wymaganie wstępne rozszerzenia VSIX zostało usunięte w programie Visual Studio 2019 RC, co powoduje przerywanie zgodności z rozszerzeniami.
- Polecenie utworzenia projektu z poziomu ekranu początkowego ignoruje wybrany folder projektów.
- Okno dialogowe właściwości CPP nie jest wyświetlane podczas korzystania z pozycji menu Projekt lub po wybraniu menu rozwijanego „Zarządzanie konfiguracją”.
- Visual Studio 2019 Build Tools — w tytule monitu dla deweloperów jest wyświetlany komunikat „Wiersz polecenia dla deweloperów programu Visual Studio 2017”.
- Niemiecka translacji dotycząca narzędzia do przesyłania opinii: Pomoc > wysyła zgłoszenie > problemu.
- 自动完成功能,如果双击候选项,会丢失输入焦点,需要单机编辑器才能继续输入 — jeśli w funkcji autouzupełniania proponowana fraza zostanie kliknięta dwukrotnie, następuje utrata fokusu wprowadzania i kontynuowanie wprowadzania może się odbywać tylko w autonomicznym edytorze.
- Menu kontekstowe są czasami umieszczane na nieprawidłowym monitorze w konfiguracji z wieloma monitorami.
- Program Visual Studio 2019 powoduje konflikt z oprogramowaniem QQ Pinyin.
- Nie można przeciągać zmaksymalizowanego okna programu Visual Studio.
- Naruszenie zasad dostępu C++/CLI 15.9.5, najnowszy standard ISO C++ od wersji 15.9.5.
- Modalne okno dialogowe postępu pozostaje trwale otwarte nawet wtedy, gdy środowisko IDE odpowiada („Przygotowywanie rozwiązania”, „Tworzenie projektu”, Edytuj i kontynuuj itp.).
- PackageId:OpenJDKV1;PackageAction:Uninstall;ReturnCode:0;.
- Visual Studio 2019 — przybornik zawsze pokazuje inicjowanie.
- Funkcja IntelliSense w plikach Razor (cshtml) nie działa..
- Porównanie schematów narzędzi SSDT nie wyróżnia różnic w plikach.
- Wyjątek programu Visual Studio podczas otwierania plików cshtml Razor.
- Nie można zainicjować rozszerzenia.
- Asp Core: Tworzenie nowego widoku wyświetla błąd.
- VS 2019 RC — nie można utworzyć formularzy WinForm (.Net Core) — wiele błędów.
- Odwołania projektu nie są ładowane po przełączeniu gałęzi.
- Błąd tworzenia szkieletów: nie ma żadnych szkieletów obsługiwanych dla tego elementu.
- Ładowanie konfiguracji działa tylko przed ukończeniem pierwszej instalacji.
- Typ projektu listy rozwijanej = tekst jest częściowo ukryty w przypadku użycia polecenia „Zwiększ tekst”.
- Nieprawidłowa lokalizacja.
- Okno właściwości w Projektancie formularzy zawiera pionowy pasek przewijania bez uchwytu przeciągania z automatycznym skalowaniem na ekranie 4K w programie Visual Studio 2019 RC.
- Autouzupełnianie Razor działa do momentu naciśnięcia klawisza Tab/Enter, a następnie używa kodu HTML.
- Plik VSIXInstaller.exe losowo ulega awarii podczas instalowania wielu rozszerzeń po kolei w programie Visual Studio 2019 RC.1.
- Przeniesienie znaku } powoduje awarię programu Visual Studio.
- Wyłączone kontrolki interfejsu użytkownika Telerik dla WPF w programie Visual Studio 2019 (wersja zapoznawcza 3 i wersja zapoznawcza 4).
- Nieobsługiwany wyjątek System.OperationCanceledException.
- Program Visual Studio 2019 RC ulega awarii przy uruchamianiu, gdy używane jest narzędzie IME innej firmy (QQ Pinyin, Google IME).
- Program Visual Studio 2019 w wersji zapoznawczej 4 ulega awarii po zamknięciu oddokowanego okna.
- Błąd funkcji IntelliSense: Inicjowanie statycznej składowej constexpr języka C++11 powoduje, że "element członkowski może nie zostać zainicjowany".
- Strona początkowa „Usuń z listy” przestaje działać.
- Ścieżka $(VCIDEInstallDir) jest nieprawidłowa. Brak ukośnika odwrotnego w pliku Microsoft.Cpp.Common.props.
- Program Visual Studio 2019 w wersji zapoznawczej 2.0+ ulega awarii podczas otwierania filtru rozwiązania.
- Pasek narzędzi Zarządzaj rozszerzeniami zgłasza wyjątek.
- Test kompilatora konfiguracji narzędzia CMake kończy się niepowodzeniem dla maszyny wirtualnej niskiego poziomu/clang-cl
- SSDT: Poprawka poprawiająca wydajność ładowania rozwiązań z wieloma projektami.
- SSDT: Poprawka dotycząca plików SQL nie zawsze jest usuwana podczas przeprowadzania porównania schematu między bazą danych a projektem, a następnie jest wykonywana tabela usuwania.
- SSDT: poprawki ułatwień dostępu w celu zwiększenia możliwości narracji.
- SSDT: zastąpiono starszy sterownik sqlncli nowym sterownikiem Microsoft ODBC dla programu SQL Server.
- Naprawiliśmy powolne ponowne ładowanie wielu projektów w językach C# i Visual Basic.
- Jeśli podczas korzystania z funkcji IntelliSense użytkownik naciśnie klawisze Shift + Enter, aktywne zaznaczenie zostanie ukończone i zostanie wstawiony nowy wiersz.
- Rozwiązaliśmy problem z PMA polegający na tym, że etykietki narzędzi edytora i żarówka nie były prawidłowo renderowane.
- Powiadomienia o awariach powodowanych przez rozszerzenia są teraz ponownie wyświetlane.
- Powiadomienia o wydajności programu Visual Studio zostały zabezpieczone przed naruszeniem.
- Rozwiązaliśmy problem z renderowaniem paska narzędzi podczas jego przeciągania po ekranach.
- Rozwiązaliśmy problem z renderowaniem opcji narzędzi podczas działania z włączonym rozpoznawaniem monitorów.
- Różne klasy DpiHelper zostały uznane za przestarzałe (rozszerzalność).
- Naprawiliśmy skalowanie ekranu powitalnego, aby lepiej dopasować współczynnik skali monitora podstawowego.
- Rozwiązaliśmy problem z importowaniem ustawień polegający na tym, że ostrzeżenia/błędy nie zawsze były prawidłowo raportowane.
- Rozwiązaliśmy problem polegający na tym, że opcje narzędzi zgłaszały renderowanie oprogramowania niezależnie od warstwy renderowania.
- Rozwiązaliśmy problem polegający na tym, że nazwa otwartego folderu nie była wyświetlana w regionie paska tytułu.
- Rozwiązaliśmy problem z pozycjonowaniem funkcji wyszukiwania w plikach z włączonym rozpoznawaniem monitorów.
- Rozwiązaliśmy problem z renderowaniem modułu definiowania układu z włączonym rozpoznawaniem monitorów.
- Teraz możesz używać debugowania przechodzenia w czasie z debugerem migawki w aplikacjach ASP.NET uruchomionych na maszynie wirtualnej platformy Azure. Ta funkcja może nie działać we wszystkich regionach świadczenia usługi Azure w momencie wydania.
- Zaktualizowaliśmy tworzenie szkieletu pliku Dockerfile w rozszerzeniu Visual Studio Tools for Kubernetes w celu używania rejestru kontenerów firmy Microsoft zamiast usługi Docker Hub.
- Rozwiązaliśmy problem w rozszerzeniu Visual Studio Tools for Kubernetes polegający na tym, że zmodyfikowanie pliku Dockerfile.develop nie powodowało ponownego wdrożenia usługi.
- Rozwiązaliśmy problem w rozszerzeniu Visual Studio Tools for Kubernetes polegający na tym, że uruchomienie usługi w projekcie usługi Azure Dev Spaces mogło się nie powieść.
- Rozwiązaliśmy problem w rozszerzeniu Visual Studio Tools for Kubernetes polegający na tym, że usługa w projekcie usługi Azure Dev Spaces przestawała działać po zatrzymaniu debugowania w programie Visual Studio.
- Rozwiązaliśmy problem w programie Visual Studio Tools for Kubernetes polegający na tym, że podczas wybierania kont w oknie dialogowym usługi Azure Dev Spaces było czasami wyświetlane okno dialogowe błędu odwołania o wartości null.
- Rozwiązaliśmy problem w programie Visual Studio Tools for Kubernetes polegający na tym, że okno dialogowe wybierania klastra było wyświetlane podczas dodawania obsługi orkiestracji rozwiązania Kubernetes.
- Naprawiliśmy renderowanie Kreatora importowania i eksportowania ustawień podczas uruchamiania z rozpoznawaniem monitora
- Naprawiliśmy zmianę rozmiaru okna dialogowego Nowy projekt podczas uruchamiania z rozpoznawaniem monitora
- Wprowadziliśmy zestaw udoskonaleń wizualnych w oknie uruchamiania
Znane problemy
Zobacz wszystkie istniejące znane problemy i dostępne obejścia w programie Visual Studio 2019 w wersji 16.0, wybierając poniższy link.
Opinie i sugestie
Chcemy poznać Twoje zdanie! 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. Ikona 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.