Informacje o wersji 16.5 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.5
Ramy czasowe pomocy technicznej
Ta wersja nie jest już obsługiwana. Aby uzyskać więcej informacji na temat obsługi 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.5
- 12 maja 2020 r. — Visual Studio 2019 w wersji 16.5.5
- 14 kwietnia 2020 r. — Visual Studio 2019 w wersji 16.5.4
- 7 kwietnia 2020 r. — Visual Studio 2019 w wersji 16.5.3
- 31 marca 2020 r. — Visual Studio 2019 w wersji 16.5.2
- 24 marca 2020 r. — Visual Studio 2019 w wersji 16.5.1
- 16 marca 2020 r. — Visual Studio 2019 w wersji 16.5.0
Blog dotyczący programu Visual Studio 2019
Blog dotyczący programu Visual Studio 2019 to oficjalne źródło informacji o produkcie pochodzących od zespołu inżynierów ds. programu Visual Studio. Szczegółowe informacje na temat wersji programu Visual Studio 2019 można znaleźć w następujących wpisach:
- Program Visual Studio 2019 w wersji 16.5 jest już dostępny!
- Nadeszła pora na wydanie programu Visual Studio 2019 w wersji 16.4
- Visual Studio 2019 16.4 (wersja zapoznawcza 2), sporty jesienne i przyprawa z dyni
- .NET Core Support and More in Visual Studio 2019 version 16.3 - Update Now! (Obsługa platformy .NET Core i innych w programie Visual Studio 2019 w wersji 16.3 — zaktualizuj teraz)
- Wydano program Visual Studio 2019 16.3 (wersja zapoznawcza 2) i program Visual Studio 2019 8.3 dla komputerów Mac (wersja zapoznawcza 2)!
- Program Visual Studio 2019 w wersjach 16.2 i 16.3 (wersja zapoznawcza 1) jest teraz dostępny
- Visual Studio 2019 16.2 (wersja zapoznawcza 2)
- Program Visual Studio 2019 w wersjach 16.1 (wersja zapoznawcza) i 16.2 (wersja zapoznawcza)
- Visual Studio 2019: Szybsze tworzenie kodu. Pracuj mądrzej. Kreuj przyszłość.
Dołącz do dyskusji na temat informacji o wersji
- Aktywnie szukamy sposobów ulepszania naszych informacji o wersji, aby zapewnić najważniejsze informacje. Zachęcamy Cię do wzięcia udziału w naszej dyskusji na temat informacji o wersji na forum Developer Community!
Visual Studio 2019 w wersji 16.5.5
wydany 12 maja 2020 r.
Poprawki wprowadzone w tym wydaniu programu Visual Studio 2019 w wersji 16.5
- Program Team Explorer nie ładuje się po aktualizacji programu Visual Studio 2019 do obowiązkowej najnowszej wersji
- Wyróżnianie w funkcji Znajdź kończy się niepowodzeniem w przypadku dopasowywania z uwzględnieniem wielkości liter i włączeniem opcji wyrażenia regularnego
Zalecenia dotyczące zabezpieczeń
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.
CVE-2020-1161 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 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.
Visual Studio 2019 w wersji 16.5.4
wydany 14 kwietnia 2020 r.
Poprawki wprowadzone w tym wydaniu programu Visual Studio 2019 w wersji 16.5
- Zmodyfikowano widok listy wyszukiwania, aby współpracował z rozszerzeniem VsColorOutput.
- Naprawiono regresję wprowadzoną w wersji 16.5 polegającą na tym, że użycie domyślnych właściwości indeksowanych z typami wartości powodowało wewnętrzny błąd kompilatora.
- Zmodyfikowano funkcję wyszukiwania w plikach, aby były zachowywane ustawienia użytkownika między sesjami programu Visual Studio 2019.
- Rozwiązano problem polegający na tym, że przejście do następnej/poprzedniej pozycji na liście wyników wyszukiwania nie działało, gdy wyłączono opcję „Podgląd zaznaczonych plików w Wynikach wyszukiwania”.
- Rozwiązano problem z wyszukiwaniem podczas wyszukiwania wyrażeń regularnych we wzorcu, który nie zawierał znaków specjalnych wyrażenia regularnego.
- Naprawiono problem z umiejscowieniem przycisku w oknie narzędzia Znajdź w plikach, gdy jest ono w pozycji zadokowanej. Zmieniono wyrównanie w celu usprawnienia środowiska w trybie zadokowanym.
- Rozwiązano problem polegający na tym, że po naciśnięciu klawisza Enter w widoku listy wyszukiwania nie następowało przejście do wyników.
Zalecenia dotyczące zabezpieczeń
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.5.3
wydany 7 kwietnia 2020 r.
Poprawki wprowadzone w tym wydaniu programu Visual Studio 2019 w wersji 16.5
- Rozwiązano problem uniemożliwiający otwieranie niektórych typów plików.
- Rozwiązano problem powodujący niepowodzenie podczas dodawania konta programu Apple Developer z uwierzytelnianiem dwuskładnikowym.
- Rozwiązano problem powodujący awarię w aplikacjach systemu watchOS podczas tworzenia wątku odzyskiwania pamięci.
- Naprawiono regresję, która uniemożliwiała stosowanie notacji wykładniczej liczb zmiennoprzecinkowych w postaci 1e5f.
- Rozwiązano problem uniemożliwiający otwieranie plików otwartych w zewnętrznych aplikacjach, takich jak Word lub Excel.
- Rozwiązuje problem w przypadku podania nieprawidłowych poświadczeń podczas próby nawiązania połączenia ze zdalnym hostem kompilacji dla komputerów Mac.
Visual Studio 2019 w wersji 16.5.2
wydany 31 marca 2020 r.
Poprawki wprowadzone w tym wydaniu programu Visual Studio 2019 w wersji 16.5
- Wystąpił błąd podczas generowania kluczy SSH. Sprawdź, czy środowisko jest prawidłowo skonfigurowane. Szczegóły: cat: /Users/cc/Library/Caches/Xamarin/XMA/Keys/1984b83a-dde9-4031-919d-b1d1b8411d0d: Brak takiego pliku lub katalogu
- Wyjątek InvalidOperationException podczas debugowania aplikacji Xamarin Forms
- Ramka nie znajduje się w module na platformie Xamarin Forms dla systemu Android
- Wewnętrzny błąd kompilatora został usunięty i analiza dla zestawu WDK kończy się poprawnie.
- Rozwiązaliśmy problem z nowym środowiskiem znajdowania w plikach, który powodował brak możliwości przeszukiwania plików ukrytych i wygenerowanych automatycznie.
- Rozwiązano problem z wdrażaniem aplikacji platformy UWP na maszynach zdalnych, na których wdrażanie kończy się niepowodzeniem z komunikatem "DEP0600: Wdrożenie nie powiodło się. DkmException — błąd w aplikacji”.
- Lokalna zmienna statyczna nie została zainicjowana w funkcji śródwierszowej klasy zaimportowanej z biblioteki DLL
- VS 2019 16.5.X: Wiele projektów startowych podczas ostatniego otwarcia dynamicznego drzewa wizualnego w sesji debugowania ulega awarii
- Rozwiązano problemy związane z wcięciem nowych wierszy zawierających tylko nawiasy zamykające podczas formatowania kodu C++.
- Usunięto usterkę uniemożliwiającą niektórym użytkownikom zainstalowanie wersji 16.5
- Rozwiązano problem mogący powodować awarię programu Visual Studio, gdy zmianie ulegnie konfiguracja ekranu.
- Rozwiązano problem powodujący spowolnienia podczas otwierania rozwiązań, które mają wpływ na kod IntelliSense i powiązane operacje.
- Rozwiązano problem powodujący awarię debugera, która mogła wystąpić, gdy debugowana aplikacja docelowa zgłosiła wyjątek.
- Dodano obsługę środowiska Xcode 11.4.
Visual Studio 2019 w wersji 16.5.1
wydany 24 marca 2020 r.
Poprawki wprowadzone w tym wydaniu programu Visual Studio 2019 w wersji 16.5
- W narzędziu do odwijania pętli naprawiono usterkę, która mogła powodować generowanie nieprawidłowych kodów warunków w odwiniętej pętli.
- Naprawiono usterkę, która powodowała przerwanie działania procesu ServiceHub.Host.CLR.x64.
- Rozwiązano problem dotyczący chińskiej wersji błędów kompilatora C4533 i C2362, który powodował nieprawidłową kolejność podstawiania ciągów dla tych języków.
- Zwiększono stabilność narzędzi diagnostycznych i profilera wydajności.
- Problem z generowaniem kodu powodujący awarię w czystym destruktorze wirtualnym w obiekcie const
- Naprawiono regresję oceny stałej z wersji 16.5, wersja zapoznawcza 2
- Rozwiązano problem polegający na tym, że nie można sparować systemu macOS.
- Rozwiązano problem polegający na tym, że nie można uruchomić narzędzi diagnostycznych (podczas debugowania) i profilera wydajności na urządzeniach XBox.
Visual Studio 2019 w wersji 16.5.0
wydany 16 marca 2020 r.
W tym wydaniu programu Visual Studio 2019 w wersji 16.5
Visual Studio IDE
- Po zatrzymaniu wskaźnika myszy dla każdego dokumentu na liście przepełnień grupy kart zostanie wyświetlony przycisk Zamknij
- Wybór wielu katalogów platformy Azure
- Wdrożone ulepszenia sugerowane przez użytkowników na kartach pionowych
Debugowanie
- Dekompilacja kodu C#
- Dołączanie do procesów uruchomionych w kontenerach systemu Windows platformy Docker
- Otwieranie debugowania enklawy na potrzeby przetwarzania informacji poufnych platformy Azure
- Ulepszenia widoku alokacji w narzędziu do śledzenia alokacji obiektów platformy .NET
- Wyświetlanie informacji o tym, który zarządzany wątek utrzymuje blokadę obiektu platformy .NET
- Otwieranie debugowania enklawy na potrzeby przetwarzania informacji poufnych platformy Azure
- Przypinanie właściwości w etykietkach danych i elementach automatycznych, ustawieniach regionalnych i oknach wyrażeń kontrolnych dla kodu C++
Narzędzia platformy Azure
- Ulepszenia dotyczące produktywności | Teraz zapewnia obsługę serwera procesów roboczych platformy .NET Core.
- Dodano obsługę usługi Azure Functions w wersji 3. Dzięki temu podczas tworzenia projektu pojawiła się nowa możliwość użycia wersji 3 zamiast wersji 2.
- W przypadku publikowania w usłudze App Service dla systemu Linux program Visual Studio teraz czeka przed otwarciem okna przeglądarki, aż aplikacja zostanie uruchomiona.|
C++
- Obsługa modelu uzupełniania zespołów funkcji IntelliCode i zmiennych członkowskich
- Ulepszenia funkcji IntelliSense
- Menedżer połączeń w wierszu polecenia
- Debugowanie/wdrażanie dla systemu WSL
- Obsługa trybu zgodności ze standardem FIPS 140-2
- Usługi językowe dla plików języka CMake i lepsze manipulowanie projektami CMake
- Projekty programu Visual Studio w systemie Linux mają teraz dokładniejszą funkcję IntelliSense i umożliwiają kontrolowanie zdalnej synchronizacji nagłówka w poszczególnych projektach.
F# — język i narzędzia
- Ulepszenia wydajności dla dużych rozwiązań
- Funkcje rozwiązania FSharp.Core w wersji zapoznawczej są teraz chronione za pomocą flagi
LangVersion
- Różne poprawki usterek i ulepszenia
Produktywność platformy .NET
- Refaktoryzacja w celu przekształcenia fragmentu kodu z istniejącej metody na funkcję lokalną
- Refaktoryzacja w celu ustawienia elementów członkowskich jako statycznych
- Refaktoryzacja ułatwiająca interpolację ciągów
- Opcja EditorConfig w celu wykluczenia analizatorów do uruchamiania na wygenerowanych plikach lub folderach
- Autorzy analizatorów mogą teraz dystrybuować niestandardowe refaktoryzacje kodu jako pakiet NuGet
- Możliwość konwersji operatora
if
na instrukcje switch lub wyrażenia switch - Uzupełnianie IntelliSense dla niezaimportowanych metod rozszerzenia
- Możliwość użycia elementu System.HashCode do zaimplementowania metody GetHashCode, gdy element System.HashCode jest dostępny
Testowanie
- Profilowanie testu jednostkowego na platformie .NET Core
- Ustawienie „Auto” dla domyślnej architektury procesora
- Udoskonalenia dotyczące wydajności dla użycia pamięci i czasu ładowania
- Lepsza diagnostyka dla funkcji Live Unit Testing
JavaScript/TypeScript
- Wyszukiwanie kodu dla języka JavaScript/TypeScript
- ESLint dla plików TypeScript
- Kompilator języka TypeScript 3.8 w wersji beta i usługa językowa dla języków JavaScript i TypeScript.
- Eksperymentalne: szybszy aparat wyróżniania składni korzystający z drzewa składni zamiast gramatyki TextMate
SQL
Narzędzia platformy UWP/WPF
- Przeciągnięcie obrazu z projektu do edytora XAML powoduje wygenerowanie tagu obrazu
- Zmiana koloru tła obszaru kompozycji dla projektanta XAML teraz działa w projektach WPF .NET Core
- Projektant XAML teraz obsługuje ładowanie projektów programu .NET Core 3.x, które obejmują ustawienia PublishSingleFile, RuntimeIdenfier i PublishTrimmed
Xamarin
- Używanie przeładowywania kodu XAML na gorąco na wielu emulatorach, symulatorach i urządzeniach jednocześnie
- Konspekt dokumentu dla interfejsów użytkownika zestawu Xamarin.Forms w języku XAML
- Stosowanie zmian w systemie Android
- Profile niestandardowe z funkcją śledzenia uruchamiania
- Obsługa języka Kotlin dla generatora rozszerzenia Xamarin.Android
- Ulepszono scalanie pliku AndroidManifest.xml
- Szybkie zmiany kontrolek niestandardowych dla układów systemu Android
- Ulepszono funkcję IntelliSense systemu Android
Szczegóły nowości w programie Visual Studio w wersji 16.5
Visual Studio IDE
- Teraz można filtrować konta do określonego podzestawu katalogów usługi Azure Active Directory, które mają być dostępne dla programu Visual Studio
Debugowanie
Teraz możesz dekompilować kod zarządzany nawet wtedy, gdy nie masz symboli, co pozwala na przejrzenie kodu, inspekcję zmiennych i ustawianie punktów przerwania.
Teraz możesz dołączać do procesów uruchomionych w kontenerach systemu Windows platformy Docker za pomocą okna dialogowego Dołączanie do procesu.
Debugowanie enklawy jest teraz obsługiwane w programie Visual Studio za pośrednictwem zestawu SDK Open Enclave. Aby uzyskać więcej informacji na temat debugowania enklawy, przejdź na stronę aka.ms/OpenEnclaveVisualStudio.
W narzędziu do śledzenia alokacji obiektów platformy .NET wprowadzono kilka ulepszeń widoku alokacji. Widok śledzenia wstecznego został przeniesiony do oddzielnego panelu, aby ułatwić rozróżnianie typów alokacji i wywoływanych funkcji. Drzewa wywołań w widoku śledzenia wstecznego został przerzucony, aby ułatwić diagnozowanie, do których funkcji przydzielono najwięcej pamięci. Ponadto dodano ikony wskazujące typy wartości i odwołań, a wkrótce dodamy jeszcze dwie ikony kolekcji wartości i odwołań.
C++
Deweloperzy języka C++ mogą teraz trenować modele funkcji IntelliCode w swoich bazach kodu. Nazywamy to modelem uzupełniania zespołów, ponieważ korzystasz z rozwiązań Twojego zespołu. Ponadto ulepszono sugestie funkcji IntelliCode dotyczące zmiennych członkowskich.
Funkcja IntelliSense wyświetla teraz bardziej czytelne nazwy typów podczas pracy z biblioteką standardową.
Dodaliśmy możliwość określenia, czy znaki Enter, spacji i tabulacji mają pełnić funkcje znaków zatwierdzania, oraz do określenia, czy tabulacja jest używana do wstawiania fragmentu kodu. Znajdź te ustawienia w obszarze Narzędzia > Opcje > Edytor > tekstu C/C++ > Advanced > IntelliSense.
Teraz można korzystać z natywnej obsługi systemu WSL przez program Visual Studio podczas oddzielania systemu kompilacji od zdalnego systemu wdrażania. Dzięki temu można kompilować natywnie w systemie WSL i wdrażać artefakty kompilacji w drugim zdalnym systemie na potrzeby debugowania. Ten przepływ pracy jest obsługiwany przez projekty języka CMake i projekty systemu Linux oparte na platformie MSBuild.
Teraz można korzystać z przechowywanych połączeń zdalnych w wierszu polecenia. Jest to przydatne w przypadku takich zadań jak aprowizacja nowej maszyny deweloperskiej lub konfiguracja programu Visual Studio w ciągłej integracji.
Program Visual Studio obsługuje teraz tryb zgodności ze standardem FIPS 140-2 podczas tworzenia aplikacji C++ przeznaczonych dla zdalnego systemu Linux.
Zoptymalizowano kopię pliku źródłowego dla projektów CMake przeznaczonych dla zdalnego systemu Linux. Program Visual Studio zachowuje teraz „plik odcisku palca” ostatniego zestawu źródeł, który jest domyślnie kopiowany, i optymalizuje zachowanie na podstawie liczby zmienionych plików.
Funkcje nawigowania po kodzie, takie jak przechodzenie do definicji oraz znajdowanie wszystkich odwołań, są teraz obsługiwane dla funkcji, zmiennych i elementów docelowych w plikach skryptów CMake.
Dodawaj, usuwaj i zmieniaj nazwy plików oraz elementów docelowych w projektach platformy CMake z poziomu środowiska IDE bez konieczności ręcznego edytowania skryptów CMake. Po dodaniu lub usunięciu plików w Eksploratorze rozwiązań program Visual Studio będzie automatycznie edytować projekt platformy CMake. Można również dodawać i usuwać elementy docelowe projektu oraz zmieniać ich nazwy z widoku elementów docelowych w Eksploratorze rozwiązań.
F# — język i narzędzia
Ta wersja skoncentrowała się głównie na poprawie wydajności i skalowalności dużych baz kodu języka F# w programie Visual Studio. Na wykonywaną przez nas pracę miała wpływ bezpośrednia współpraca z klientami, którzy mają bardzo duże bazy kodu. Praca nad zwiększeniem wydajności nadal trwa, ale jeśli masz średnią lub dużą bazę kodu, prawdopodobnie zauważysz zmniejszone użycie pamięci.
Oprócz ulepszeń wydajności ta wersja obejmuje wiele innych poprawek, w przypadku których współautorami byli członkowie naszej fantastycznej społeczności OSS języka F#.
Język F#
Kilka funkcji języka F# w wersji zapoznawczej zostało scalonych. Możesz je wypróbować, ustawiając element LangVersion
na preview
w pliku projektu.
- Dokument F# RFC FS-1076 - From the end slicing and indexing for collections (F# RFC FS-1076 — fragmentowanie od końca i indeksowanie na potrzeby kolekcji) został ukończony na potrzeby wersji zapoznawczej języka F#
- Dokument F# RFC FS-1077 - Tolerant Slicing (F# RFC FS-1077 — fragmentowanie z tolerancją) został ukończony na potrzeby wersji zapoznawczej języka F#
- Dokument F# RFC FS-1077 - Slicing for 3D/4D arrays with fixed index (F# RFC FS-1077 — fragmentowanie macierzy 3d/4D z ustalonym indeksem) został ukończony na potrzeby wersji zapoznawczej języka F#
- F# RFC FS-1080 - Float32 bez kropki został ukończony dla wersji zapoznawczej F#, współautor : Grzegorz Dziadkiewicz
kompilator F#
- Dodano obsługę opcji
--standalone
dla platformy .NET Core - Utworzono różne ulepszenia dotyczące odzyskiwania sprawności po wystąpieniu błędów, współautor: Eugene Auduchinok
- Dodano obsługę generowania elementu AssemblyInfo z pliku projektu
- Usprawniono raportowanie błędów dla niezgodnych rekordów anonimowych, współautor: Isaac Abraham
- Usunięto usterkę polegającą na tym, że podczas korzystania ze skrótów typu mogło nastąpić pominięcie analizy elementu
byref
w kompilatorze - Teraz można określić atrybut
[<Literal>]
w plikach podpisów języka F# - Usunięto usterkę polegającą na tym, że flaga
LangVersion
była zależna od kultury - Usunięto usterkę polegającą na tym, że duże typy i wyrażenia zdefiniowane w źródle doprowadzały do przepełnienia stosu
- Usunięto usterkę polegającą na tym, że można było definiować dowolne bezsensowne argumenty w rozszerzeniach typów języka F#
- Usunięto usterkę polegającą na tym, że wyczerpujące dopasowania wartości literałów SByte i Byte emitowały ostrzeżenie
- Usunięto usterkę polegającą na tym, że można było definiować nieprawidłowe skróty typu z elementami
byref
s i wartościami podobnymi dobyref
- Usunięto usterkę polegającą na tym, że nieprawidłowe literały binarne i ósemkowe były akceptowane przez kompilator, współautor: Grzegorz Dziadkiewicz
- Usunięto usterkę polegającą na tym, że element
P/Invoke to "kernel32.dll"
był wywoływany w kompilacji źródła FreeBSD platformy .NET Core; użytkownik, który usunął usterkę: Adeel Mujahid - Dodano różne drobniejsze ulepszenia wydajności, autorzy: Eugene Auduchinok i Steffen Formann
Podstawowa biblioteka języka F#
- Usunięto usterkę polegającą na tym, że wywoływanie elementu
string
lub.ToString
dla wartościValueNone
powodowało zgłoszenie wyjątku - Usterka polegająca na tym, że wywołanie
Async.Sleep
w ramach sekwencyjnie przetworzonego zestawu wyrażeń asynchronicznych nie było przetwarzane sekwencyjnie, zostało rozwiązane przez Fraser Waters - Rozwiązano problem polegający na tym, że metoda
Async.Choice
mogła prowadzić do przecieków pamięci, współautor: Fraser Waters
Narzędzia języka F# dla programu Visual Studio
- Usunięto usterkę polegającą na tym, że wersja produktu w oknie informacji o programie Visual Studio była błędnie wyświetlana jako F# 4.6
- Usunięto usterkę polegającą na tym, że typ
fsi
w skryptach języka F# był niepoprawnie traktowany jako niezdefiniowany
Środowisko programistyczne języka F# typu open source
- Kompilacja usługi FSharp.Compiler.Service w repozytorium języka F# została przeniesiona w celu korzystania z zestawu .NET SDK, współautor: Chet Husk
Produktywność platformy .NET
Teraz można przekształcić fragment kodu z istniejącej metody na funkcję lokalną. Wyróżnij kod, który ma zostać wyodrębniony. Naciśnij klawisze (Ctrl+.), aby wywołać menu Szybkie akcje i operacje refaktoryzacji. Wybierz pozycję Wyodrębnij funkcję lokalną.
Teraz można ustawiać elementy członkowskie jako statyczne. Umieść kursor na nazwie elementu członkowskiego. Naciśnij klawisze (Ctrl+.), aby wywołać menu Szybkie akcje i operacje refaktoryzacji. Wybierz pozycję Ustaw jako statyczny.
Teraz można uprościć interpolacje ciągów, gdy jest to możliwe. Umieść kursor na interpolacji ciągu. Naciśnij klawisze (Ctrl+.), aby wywołać menu Szybkie akcje i operacje refaktoryzacji. Wybierz pozycję Uprość interpolację.
Teraz możesz wykluczyć wygenerowane pliki lub foldery podczas uruchamiania analizatorów. Utwórz plik EditorConfig i oznacz wymagane pliki lub foldery jako wygenerowane przy użyciu następującej składni:
Autorzy analizatorów mogą teraz dystrybuować niestandardowe refaktoryzacje kodu jako pakiet NuGet. Wcześniej można je było dystrybuować tylko jako pakiet VSIX.
Testowanie
Możesz teraz profilować test platformy .NET Core. Należy pamiętać, że wymagania wstępne dotyczące profilowania obejmują skonfigurowanie projektów platformy .NET Core pod kątem generowania pełnych plików PDB. Zaleca się również uaktualnienie pakietu Microsoft.Test.SDK do wersji 16.4 lub nowszej. Pozwoli to na profilowanie testów dla ustawień zarówno architektury x86, jak i x64. Aby profilować test, wybierz pozycję „Profiluj” z menu kontekstowego w eksploratorze testów. Profilowanie testów jest obsługiwane za pośrednictwem instrumentacji statycznej i dokumentu vsp eksploratora wydajności w programie Visual Studio.
Ustawienie domyślne architektury procesora dla testów ma teraz trzecią opcję („Auto”) w dodatku do opcji x64 i x86. Opcja „Auto” obsługuje różne domyślne architektury dla testów przeznaczonych dla platform .NET Framework i .NET Core. Dla testów platformy .NET Framework wartość domyślna dla wykonywania testów to x86, a w przypadku platformy .NET Core jest to x64. Opcja „Auto” umożliwia użytkownikowi nieokreślanie architektury i użycie różnych wartości domyślnych dla tych platform. Poprzednio opcja x86 była wartością domyślną we wszystkich przypadkach, jednak wprowadzono testy platformy .NET Core z opcją domyślną o wartości x64 i dlatego wynikła potrzeba zróżnicowania wartości domyślnej.
Ta wersja obejmuje znaczące ulepszenia wydajności dotyczące odnajdywania i wykonywania testów, szczególnie w przypadku dużych rozwiązań z dużą ilością testów. Zachęcamy do uruchomienia własnych testów porównawczych w celu oceny, jak jest to znaczące. Dzięki kodowi podstawowemu projektu Roslyn (kompilatora języków C# i Visual Basic) eksplorator testów zmniejszył użycie pamięci od 50% do 60%, a czas ładowania został skrócony o 60%.
Teraz jest dostępna lepsza diagnostyka dla funkcji Live Unit Testing. Gdy kompilacja funkcji Live Unit Testing nie powiedzie się, dodatkowe informacje diagnostyczne zostaną umieszczone w danych wyjściowych, w tym w dziennikach programu MSBuild. Będą również zgłaszane przypadki, w których ścieżka danych wyjściowych jest ustalona.
JavaScript/TypeScript
Wyszukiwanie w programie VS obsługuje teraz możliwość wyszukiwania typów i elementów członkowskich w plikach TypeScript i JavaScript. Obsługiwane jest również wyszukiwanie bloków JavaScript w otwartych plikach znaczników (tj. HTML, CSHTML)
Program Visual Studio obsługuje teraz narzędzie ESLint dla plików TypeScript: istnieje konfiguracja globalna z zestawem zalecanych reguł lub można skonfigurować narzędzie ESLint lokalnie dla projektu z pełnymi możliwościami dostosowywania. Więcej informacji i instrukcji jest dostępnych na naszej stronie usługi GitHub
Xamarin
Za pomocą przeładowywania kodu XAML na gorąco można teraz zobaczyć zmiany zaktualizowane w wielu obiektach docelowych Xamarin.Forms jednocześnie. Debuguj aplikację za pomocą wielu projektów startowych, zmień kod XAML i naciśnij przycisk Zapisz, aby wyświetlić zmiany w systemach Android i iOS jednocześnie.
Teraz można wyświetlić hierarchię kontrolek Xamarin.Forms w okienku konspektu dokumentu. W systemie Windows można go otworzyć za pomocą Ctrl+Alt+T (Wyświetl > inny konspekt dokumentu systemu Windows > ). Na komputerze Mac można go otworzyć za pośrednictwem konspektu dokumentu w konsoli widoków > > .
Teraz można stosować zmiany zasobów systemu Android w czasie wykonywania przy użyciu funkcji stosowania zmian systemu Android. Ta funkcja umożliwia szybkie wyświetlanie zmian wprowadzonych w plikach zasobów systemu Android (układach XML, obiektów rysowalnych itp.) na urządzeniu z systemem Android lub w emulatorze bez konieczności ponownego uruchamiania aplikacji.
- Możesz teraz generować własne profile niestandardowe podczas korzystania z funkcji śledzenia uruchamiania w aplikacji systemu Android. Zapewnia to jeszcze bardziej wydajne środowisko uruchamiania przy minimalnym wzroście rozmiaru pliku APK.
- Teraz można generować powiązania zestawu Xamarin.Android dla bibliotek Kotlin.
- Teraz można używać scalania manifestu Google podczas scalania plików AndroidManifest.xml w projektach systemu Android. Pozwala to dostosować sposób, w jaki każdy manifest i jego zawartość zostaną scalone. Aby uzyskać więcej informacji na temat reguł, które mogą być stosowane, zobacz Scalanie wielu plików manifestu.
- Teraz możesz wybrać nową opcję, która będzie automatycznie ładować ponownie wszystkie otwarte powierzchnie projektanta po wprowadzeniu modyfikacji do bazy kodu.
- Korzystaj z funkcji skonsolidowanego edytora, aby oferować szybszą i bardziej precyzyjną funkcję IntelliSense. Obejmuje to wiele zmian, m.in. ulepszone uzupełnianie typowych konstrukcji XML, takich jak cudzysłowy atrybutów i automatyczne aktualizowanie nazw tagów końcowych. Te zachowania można kontrolować za pomocą preferencji edytora XML systemu Android:
Narzędzia platformy UWP/WPF
Przeciągnięcie obrazu z eksploratora rozwiązań do edytora XAML spowoduje teraz wygenerowanie tagu obrazu XAML z właściwością Source ustawioną na poprawną ścieżkę obrazu.
Zmiana koloru tła tablicy grafiki dla projektanta XAML działa teraz z projektami WPF .NET Core (Opcje > czcionki i kolory środowiska > , a następnie zmień ustawienia projektanta XAML i zaktualizuj tło tablicy grafiki)
Projektant XAML teraz obsługuje ładowanie projektów programu .NET Core 3.x, które obejmują ustawienia PublishSingleFile, RuntimeIdenfier i PublishTrimmed w pliku projektu (csproj). Należy pamiętać, że włączenie tych ustawień spowalnia działanie projektanta.
Najważniejsze problemy z forum Developer Community
- Nieobsługiwany wyjątek .NET
- Otworzenie okna wątków powoduje awarię programu Visual Studio 2019
- Program ScriptedSandbox64.exe ulega awarii wiele razy w ciągu dnia
- Skrót klawiaturowy użytkownika do widoku View.SynchronizeClassView już nie działa
- Nie jest wywoływane przeciążenie zastępczego operatora delete narzędzia ASan
- Testy kończą się niepowodzeniem i nie można rozpoczynać nowych testów
- Organizowanie dokumentu. Oczekiwanie na zakończenie pracy w tle.
- Po załadowaniu projektu express installshield w rozwiązaniu podczas uruchamiania rozwiązania: setSite nie powiodło się dla pakietu — Udostępnione składniki sieci Web — (w programie VS 16.4.3 i 16.4.4), tworzenie szkieletuPackage, EurekaPackage, WebPublishPackage
- Program Visual Studio Professional 2019 ulega awarii podczas kompilowania projektu VB.NET ASP.NET
- Nowe wyszukiwanie w wersji zapoznawczej „Wyszukaj w całym rozwiązaniu” nie przeszukuje całego rozwiązania
- Nie można wyświetlić ani otworzyć projektanta tabeli SQL z poziomu eksploratora obiektów programu SQL Server i eksploratora serwera
- Wdrażanie aplikacji platformy UWP na maszynie zdalnej przy użyciu uwierzytelniania uniwersalnego powoduje wyświetlenie komunikatu o błędzie "Błąd: Nie można nawiązać połączenia z zdalny debuger programu Microsoft Visual Studio"
- Eksplorator testów nie uruchamia testów: zbyt szczegółowe informacje o wersji środowiska uruchomieniowego platformy .NET Core
- Plik msvsmon.exe ulega awarii po natrafieniu na punkt przerwania w natywnym kodzie języka C++
- Element CSharpeRenameTrackingCodeFixProvider napotkał błąd i został wyłączony
- F4 — następny błąd/następny wynik problemu
- „Test profilu” kończy się niepowodzeniem podczas testu xUnit platformy .NET Core ze względu na „nieznaną platformę testów”
- Awarie podczas próby debugowania aplikacji platformy UWP
- Wyszukiwanie rozszerzeń programu Visual Studio zawiesza się na zawsze podczas wyszukiwania frazy „Szybki zestaw narzędzi XAML”
- Po uruchomieniu testów jednostkowych uruchamiana jest moja aplikacja platformy UWP.
- Rejestrowanie kroków w celu zgłoszenia problemu nie zakończyło się zebraniem dodatkowych informacji
- W wersji 16.5 (wersja zapoznawcza 2) kompilacje języka C++ są przerywane z powodu zmiany zachowania lokalnego kopiowania
- Blok „env” nie działa w przypadku konfiguracji systemu Linux w elemencie launch.vs.json, nie pobrano zmiennych env zdefiniowanych w elemencie CMakeSettings
- Nieprawidłowe ostrzeżenie C6011
- Po dodaniu makra dodaj makro do pliku wskazówek C++ (cpp.hint)
- Wykonywanie wyszukiwania po zablokowaniu programu Visual Studio przez debugowanie
- Edytor XAML/okno właściwości
- Nie można wybrać platformy Azure 12 jako docelowej dla projektu bazy danych
- Projekt bazy danych programu VS — wdrażanie w menu kompilacji nie robi niczego
- Eksplorator obiektów programu SQL Server | Klawisz F4 nie działa dla bazy danych
- W skrypcie publikowania SSDT brakuje ukośnika odwrotnego
- Naprawiono dodatkowe elementy z witryny Developer Community
- Menedżer pakietów ma wiele błędów wyświetlanych w narzędziach, menedżerze pakietów NuGet i zarządzaniu pakietami NuGet dla rozwiązania
- Wektor błędu generowania kodu MSVC — reverse_iterator x64 C++17 — kompilacja debugowania
- Błąd operatora niejawnej konwersji w programie VS 15.8 w wersji zapoznawczej 4
- Zignorowano niestandardowy szablon projektu
- Usterka w optymalizatorze C++/CLI
- Element _com_ptr_t nie jest akceptowany przez rozwiązanie Clang 9.0 RC
- Program Visual Studio 16.3.1 kończy działanie niepowodzeniem podczas kompilowania kodu szablonu (np. z zestawu Basler Pylon SDK)
- VS 16.4.0 w wersji zapoznawczej 1.0 — ArgumentException, kolekcje odwołują się do różnych migawek
- Program Visual Studio nie jest aktualizowany w przypadku konieczności podniesienia uprawnień
- Format Clang formatuje cały plik w otwierających i zamykających nawiasach klamrowych
- Testy jednostkowe na żywo kończą się niepowodzeniem z błędem FatalError — System.ArgumentException: podany program SnapshotPoint znajduje się na nieprawidłowej migawki.
- Program VS ulega awarii podczas próby przeciągnięcia karty w pionowym układzie kart (z prawej lub lewej)
- Błąd C2440 podczas kompilowania pliku atlenc.h z parametrem /permissive- w programie VS 16.4 (wersja zapoznawcza 1)
- Po kliknięciu ikony rozwinięcia przestrzeni nazw środowisko IDE programu Visual Studio ulega awarii.
- Ostrzeżenie C4265 jest wadliwe
- W moim kodzie źródłowym pojawiają się wszędzie zielone zygzaki
- Podczas przełączania układu okna okno narzędzi czasami przesuwa się lub znika
- Odnajdywanie testów kończy się niepowodzeniem
- VS 2019 / C++ / Google Test: Nie można uzyskać testów jednostkowych do pracy
- Integracja platformy Mono środowiska IDE programu Visual Studio nie pozwala przejść do debugowania modułów, które nie są w oryginalnej ścieżce kompilacji
- Po wybraniu karty dokumentu zostają oddokowane
- Zatrzymanie debugowania zbyt szybko po rozpoczęciu sesji debugowania w systemie iOS powoduje zawieszenie w debugerze.
- Funkcja Intellisense nie rozpoznaje atrybutu x:FactoryMethod w języku XAML
- Błąd debugera w jednym kroku podczas korzystania z Debug.WriteLine w aplikacji Windows.Forms za pomocą obiektu ElementHost systemu WPF
- Stałe użycie procesora po załadowaniu rozwiązania
- Niepoprawne wykrywanie obsługi atrybutu nodiscard z przyczyną
- Funkcja intellisense/vcpkgsrv ulega awarii na wytycznych wnioskowania
- Nie znaleziono szablonu projektów testów jednostkowych programu SQL Server w programie VS2019
- Program „codedesign” zakończył pracę z kodem 1
- Problemy z połączeniem internetowym aplikacji Android Device Manager
- Nieprawidłowe generowanie kodu SSE w programie VS2019
- błąd LNK2005: "__cdecl Windows::Foundation::operator co_await(struct Windows::Foundation::IAsyncAction ^)" (?? __LFoundation@Windows@@YA@PE$AAUIAsyncAction@01@@Z) już zdefiniowany w pch.obj
- Projekt do tworzenia biblioteki dynamicznej — błąd linku zależności biblioteki natywnej podczas korzystania z języka C++/interfejsu wiersza polecenia i platformy docelowej netcoreapp3.1
- Brak właściwości priorytetu zawartości w projektancie systemu iOS, gdy widok jest zawarty w interfejsie UIStackView
- Debuger mobilny platformy Xamarin powoduje przeszukiwanie środowiska IDE
- W pliku CMakeLists.txt brakuje punktu wejścia na pozycję „Ustawienia debugowania i uruchamiania” w widoku folderu dla konfiguracji systemu Linux i WSL
- Program Visual Studio nie uruchamia się po ponownym przełączeniu na skalowanie 250% ze 100%
- Dodanie obsługi pominięcia polecenia dotnet dev-certs podczas debugowania
- Dzielenie ciągu za pomocą wyrażenia regularnego zwraca pozornie błędne wyniki
- Klasy bazowe zależne od języka C++ i filtry wyjątków SEH
- Usterka dotycząca polecenia list::splice w VC 16.3
- Nietypowy komunikat w oknie dialogowym po usunięciu pliku z projektu.
- Tworzenie ustawień publikowania — przycisk „Utwórz profil” nie otwiera Kreatora tworzenia profilu
- Plik AppInstaller.exe nie może otworzyć pliku *.applinstaller utworzonego z projektu pakietu aplikacji systemu Windows.
- W oknie dialogowym Dodawanie nowego elementu brakuje opcji Odziedziczony formularz/Kontrolka użytkownika zaznaczonych w aplikacji Windows Forms
- Widok w przeglądarce nie zawiera poprzednio wyświetlanej strony, zostaje przekierowany na trasę domyślną.
- VS 16.4.0 w wersji 1.0 (wersja zapoznawcza) — wyjątek BuildWindow InvalidOperationException
- Zmienianie kolejności kart okna, gdy karty znajdują się po lewej stronie
- Brakuje tłumaczenia w oknie „Opinie o programie Visual Studio”.
- Nieprawidłowe raportowanie błędu metody decltype(member)::staticMethod()
- REGRESJA: Błąd funkcji IntelliSense podczas inicjowania klasy wartości języka C++/interfejsu wiersza polecenia za pomocą polecenia "{}".
- Proces kompilowania projektu cpp w wierszu polecenia dla deweloperów VS2019 korzysta z pliku cl.exe pVS2019 w przypadku parametru Platformtoolset o wartości .v141
- Wysokie użycie procesora
- Możliwość projektu IntegratedConsoleDebugging nie jest uwzględniana przez system projektowy Asp.Net Core
- Awaria podczas otwierania dowolnego pliku z zainstalowanym pakietem lokalizującym
- Awaria podczas edycji składnika Razor
Znane problemy
Zobacz wszystkie problemy i dostępne obejścia w programie Visual Studio 2019 w wersji 16.5, 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.