Notas de la versión 16.8 de Visual Studio 2019
Comunidad de desarrolladores | Requisitos del sistema | Compatibilidad | Código distribuible | Historial de versiones | Términos de licencia | Blogs | Novedades de la documentación de Visual Studio
Nota:
Esta no es la versión más reciente de Visual Studio. Para descargar la versión más reciente, visite el sitio de Visual Studio.
Novedades de Visual Studio 2019, versión 16.8
Período de tiempo de soporte técnico
Esta versión ya no es compatible. Para más información sobre la compatibilidad con Visual Studio, revise la Directiva de compatibilidad para Visual Studio 2019.
Consulte la versión más reciente de las notas de la versión o visite el sitio de Visual Studio para descargar la versión más reciente compatible de Visual Studio 2019.
Versiones de Visual Studio 2019, versión 16.8
- 9 de marzo de 2021: Visual Studio 2019, versión 16.8.7
- 22 de febrero de 2021: Visual Studio 2019, versión 16.8.6
- 9 de febrero de 2021: Visual Studio 2019, versión 16.8.5
- 12 de enero de 2021: Visual Studio 2019, versión 16.8.4
- 8 de diciembre de 2020: Visual Studio 2019,versión 16.8.3
- 19 de noviembre de 2020: Visual Studio 2019, versión 16.8.2
- 12 de noviembre de 2020: Visual Studio 2019, versión 16.8.1
- 10 de noviembre de 2020: Visual Studio 2019, versión 16.8.0
Notas de la versión archivadas de Visual Studio 2019
- Notas de la versión de Visual Studio 2019 16.7
- Notas de la versión de Visual Studio 2019, versión 16.6
- Notas de la versión de Visual Studio 2019, versión 16.5
- Notas de la versión de Visual Studio 2019, versión 16.4
- Notas de la versión de Visual Studio 2019, versión 16.3
- Notas de la versión de Visual Studio 2019 16.2
- Notas de la versión de Visual Studio 2019 16.1
- Notas de la versión de Visual Studio 2019 16.0
Blog de Visual Studio 2019
El blog de Visual Studio 2019 es la fuente oficial de información sobre el producto de la mano del equipo de ingeniería de Visual Studio. Encontrará información detallada sobre las versiones de Visual Studio 2019 en las publicaciones siguientes:
- Visual Studio 2019, versión preliminar 3, versión 16.9, está disponible desde hoy mismo.
- Versión preliminar 2 de Visual Studio 2019 v16.9 y los mejores deseos de año nuevo, todos para usted
- Visual Studio 2019, versión preliminar, versiones 16.8 y 16.9, está disponible desde hoy mismo.
- Características nuevas en Visual Studio 2019, versión 16.8, versión preliminar 3.1
- Nuevas características disponibles desde hoy en la versión preliminar 2 de Visual Studio 2019, versión 16.8
- Visual Studio 2019, versión preliminar 1, versiones 16.7 y 16.8, está disponible desde hoy mismo.
- Visual Studio 2019, versión preliminar 2, versión 16.7, está disponible desde hoy mismo.
- Nuevas y emocionantes actualizaciones relativas a la experiencia de Git en Visual Studio
- ¡Publicado hoy! Visual Studio 2019 v16.6 y v16.7 Preview 1
- Nuevas características de Visual Studio 2019, versión 16.6, versión preliminar 2
- Se ha publicado la versión 16.5 de Visual Studio 2019
- Este es el mejor momento para lanzar Visual Studio 2019, versión 16.4
- Visual Studio 2019 v16.4 Preview 2, Fall Sports, and Pumpkin Spice
- Compatibilidad con .NET Core y mucho más en Visual Studio 2019 versión 16.3: ¡actualice ahora!
- Se ha publicado la versión preliminar 2 de Visual Studio 2019 16.3 y la versión preliminar 2 de Visual Studio 2019 para Mac 8.3.
- Versión preliminar 1 de Visual Studio 2019 16.2 y 16.3 ya disponible
- Versión preliminar 2 de Visual Studio 2019 16.2
- Versión preliminar de Visual Studio 2019 16.1 y 16.2
- Visual Studio 2019: escribe código más rápido. Trabaje de forma más inteligente. Cree el futuro.
Consulte la lista completa de todos los cambios de Developer Community realizados en la versión 16.8 de Visual Studio 2019.
Visual Studio 2019, versión 16.8.7
Fecha de publicación: 9 de marzo de 2021
Problemas corregidos en esta publicación de Visual Studio 2019, versión 16.8.7
Aviso de seguridad
CVE-2021-21300 Vulnerabilidad de ejecución remota de código de Git para Visual Studio
Hay una vulnerabilidad de ejecución remota de código cuando Visual Studio clona un repositorio malintencionado.
CVE-2021-26701 Vulnerabilidad de ejecución remota de código de .NET Core
Existe una vulnerabilidad de ejecución de código remoto en .NET 5 y .NET Core debido a la forma en que se realiza la codificación de texto.
Visual Studio 2019, versión 16.8.6
Fecha de publicación: 22 de febrero de 2021
Problemas corregidos en esta publicación de Visual Studio 2019, versión 16.8.6
- Se ha corregido un error de alta prioridad que impedía a los desarrolladores insertar código en Azure Functions u otros recursos de Azure desde Visual Studio 2019.
- VS 16.8.5 Crear un repositorio Git - Crear un nuevo repositorio GitHub - PÚBLICO (sin marcar la opción Privado) - ERROR
Visual Studio 2019, versión 16.8.5
publicada el 09 de febrero de 2021
Aviso de seguridad
CVE-2021-1639 Vulnerabilidad de ejecución remota de código del servicio de lenguaje TypeScript
Existe una vulnerabilidad de ejecución remota de código cuando Visual Studio carga un repositorio malintencionado que contiene archivos de código de JavaScript o TypeScript.
CVE-2021-1721 Vulnerabilidad de denegación de servicio de .NET Core
Existe una vulnerabilidad de denegación de servicio al crear una solicitud web HTTPS durante la compilación de la cadena de certificados X509.
CVE-2021-24112 Vulnerabilidad de ejecución remota de código de .NET 5 y .NET Core
Existe una vulnerabilidad de ejecución remota de código al eliminar los metarchivos cuando una interfaz de gráficos todavía tiene una referencia a ellos. Esta vulnerabilidad solo existe en los sistemas que se ejecutan en MacOS o Linux.
Problemas corregidos en esta publicación de Visual Studio 2019, versión 16.8.5
- Se ha corregido un problema por el que las aplicaciones Microsoft.VCLibs x86 instaladas en los SDK de extensión se actualizaban con la firma correcta.
- Se ha corregido una fuga de memoria al usar las características DesignTime de C++.
- Se ha corregido un problema por el que se inicia una excepción si no se recuerda una contraseña al importar una base de datos existente en un proyecto de SSDT.
- Se ha corregido un problema que hacía que el botón Publicar estuviera deshabilitado la primera vez que los clientes publicaban proyectos de .NET Core en una carpeta o en otros destinos de hospedaje.
- Se ha corregido un bloqueo que se producía ocasionalmente cuando los desarrolladores abrían la página de vista de perfiles de publicación.
- Se ha agregado compatibilidad con Xcode 12.4.
Elementos de Developer Community
- Se ha corregido un problema por el que .sqlproj no se actualizaba con los cambios.
- Visual Studio 2019 se bloquea con errores de OOM en las soluciones de Chromium.
- Error en el compilador de optimización de Visual Studio 2019, versión 16.7.6
- Visual Studio se bloquea al seleccionar Agregar nuevo elemento > Tabla en un proyecto de base de datos.
- VSDIIUnregisterServer ralentiza Visual Studio 2019.
- Bloqueo inesperado de Visual Studio 2019 al acoplar o dividir ventanas.
Visual Studio 2019, versión 16.8.4
publicada el 12 de enero de 2021
Aviso de seguridad
CVE-2021-1651 / CVE-2021-1680 Vulnerabilidad de elevación de privilegios del Servicio recopilador estándar del concentrador de diagnósticos
Existe una vulnerabilidad de elevación de privilegios cuando el recopilador estándar del centro de diagnósticos administra incorrectamente operaciones de datos.
CVE-2020-26870 Vulnerabilidad de ejecución remota de código del instalador de Visual Studio
Existe una vulnerabilidad de ejecución remota de código que se da cuando el instalador de Visual Studio intenta mostrar un elemento Markdown malintencionado.
CVE-2021-1723 Vulnerabilidad de denegación de servicio de ASP.NET Core y Visual Studio
Existe una vulnerabilidad de denegación de servicio en la forma en que Kestrel analiza las solicitudes HTTP/2.
Problemas corregidos en esta publicación de Visual Studio 2019, versión 16.8.4
- Se ha corregido un problema que causaba que algunos componentes de IntelliCode específicos de C# no estuvieran instalados si IntelliCode se había instalado previamente de Visual Studio Marketplace en versiones anteriores de Visual Studio.
- Ahora, cuando un proyecto PackageReference hace referencia a proyectos packages.config con dependencias PackageReference, las referencias de proyecto transitivas se respetan.
- Se ha agregado compatibilidad con Xcode 12.3.
- Se ha corregido la compatibilidad con el simulador de watchOS 7.0 y versiones posteriores con x86_64.
- Se han corregido falsos positivos (C33001 ~ C33005) para el uso de variantes devueltas por una función.
- Se han corregido bloqueos de VS intermitentes en el diseñador de .NET Core de WinForms al cerrar un proyecto o una solución.
- Se ha corregido el error de proyectos de bases de datos que provocaba que al arrastrar un archivo del Explorador de soluciones a un proyecto abierto, el archivo se eliminase del sistema.
- Se ha corregido el error que provocaba que, al hacer clic en el botón para actualizar la Comparación de esquemas de SQL, no se guardasen los cambios en el archivo sqlproj.
- Se ha corregido un error que provocaba que las compilaciones no se completasen con el error “Table/column was not found” (No se ha encontrado la tabla o la columna).
- Se ha corregido la casilla “commit after merge” (confirmar tras la combinación) en Team Explorer -> Ramas.
- Se ha corregido un error que provocaba que Visual Studio no respondiese durante varios segundos mientras comprobaba si había actualizaciones.
- La herramienta DeploymentAppRecipe. exe ahora admite la ejecución desde cualquier directorio actual. Ahora también devuelve el valor distinto de cero devuelto siempre que se produce un error en la implementación e imprime los mensajes de error en el flujo de error estándar.
De Developer Community
- Después de la actualización 16.8, se reciben muchos errores de análisis de código a pesar de que ciertas reglas están establecidas en Advertencia
- Una aplicación de .NET Core 3.1 o .NET 5.0 instalada mediante ClickOnce puede generar un error al iniciarse tras haberse instalado.
- Falso positivo C33005 con _variant_t
- Error de operación de combinación y confirmación de Git
- No se pueden ver la tarea o la información de las pilas paralelas con el TFM net5.0-windows*
- Al hacer clic en el botón para actualizar la Comparación de esquemas de SQL, no se guardan los cambios en el archivo sqlproj
- Proyecto de base de datos: al arrastrar un archivo del Explorador de soluciones a una abierta, el archivo se elimina del sistema
- Error en el entrenamiento de modelos de IntelliCode en Visual Studio 2019
- Error en las sesiones de colaboración de LiveShare abiertas
Visual Studio 2019, versión 16.8.3
Fecha de publicación: 08 de diciembre de 2020
Aviso de seguridad
CVE-2020-17156 Vulnerabilidad de ejecución remota de código de Visual Studio
Hay una vulnerabilidad de ejecución remota de código cuando Visual Studio clona un repositorio malintencionado.
Problemas corregidos en esta publicación de Visual Studio 2019, versión 16.8.3
- Se corrigió un error interno del compilador cuando se define una plantilla de función anidada fuera de la clase primaria.
- Se ha corregido el error incorrecto C2355 que se producía al usar "this" en el inicializador de un miembro de datos no estático.
- Se ha corregido el error de carga del conjunto de reglas para el conjunto de reglas personalizado mediante la opción /analyze:ruleset con la opción /analyze:rulesetdirectory o /analyze:projectdirectory
- Corrección de un bloqueo intermitente en Visual Studio mientras se usa el diseñador de .NET Core de WinForms.
- Inserción de .NET 5.0.1 en Visual Studio v16.8.3
- Se corrigió un problema por el que algunas de las ventanas de herramientas para activar el contexto de la interfaz de usuario pueden bloquear Visual Studio.
- Se ha corregido la inserción desde la página Administrar ramas cuando no hay ninguna rama de seguimiento remoto de Git.
- Se ha agregado compatibilidad con Xcode 12.2.
De Developer Community
- El nombre del evento debe tener al menos tres partes separadas por una barra diagonal.
- La personalización de la barra de herramientas no se conserva.
Visual Studio 2019, versión 16.8.2
fecha de publicación: 19 de noviembre de 2020
Problemas corregidos en esta versión de Visual Studio 2019, versión 16.8.2
- Se corrigió el error de optimización en los bucles.
- Se corrigió el error interno del compilador en la implementación de elisión de copia garantizada (característica de C++ 17).
- Se corrigió la regresión del rendimiento de compilación para grandes usos de tipos anónimos.
- Se solucionó un problema en el que aparecía una barra dorada con el mensaje "El argumento especificado estaba fuera del intervalo de valores válidos" al editar el código de C#.
- Se corrigió un problema que podía provocar un error MissingMethodException al compilar un proyecto que tenía plantillas T4.
- Se corrigió un problema por el que la búsqueda en el cuadro de diálogo Nuevo proyecto podría devolver cero resultados.
De Developer Community
- KeyNotFoundException notificado por resultados de SolutionAssetStorage.GetAssetAsync en barra dorada
- Error de IntelliSense porque la compilación de tiempo de diseño no encuentra el destino "GetClCommandLineForReference"
- IOException (la canalización está rota) detectada por GetAssetAsync
- La búsqueda no funciona
- El optimizador quitó la información del controlador de eventos de forma incorrecta, lo que hace que se bloqueen algunas excepciones
Visual Studio 2019, versión 16.8.1
fecha de publicación: 12 de noviembre de 2020
Problemas corregidos en esta versión de Visual Studio 2019, versión 16.8.1
- Se ha corregido un problema de gran impacto que provocaba que se mostrase la advertencia “El paquete 'SourceExplorerPackage' no se ha cargado correctamente.” al clonar un repositorio en Team Explorer. Cuando los usuarios se encontraban con este problema, el producto dejaba de responder.
Visual Studio 2019, versión 16.8.0
fecha de publicación: 10 de noviembre de 2020
Resumen de las novedades de esta versión de Visual Studio 2019 16.8
F# :
- F# 5 ahora está disponible junto con .NET 5
- Mejoras y correcciones de rendimiento para las herramientas de Visual Studio a través de la versión 11.0.0 de las herramientas de F#
- Notas de la versión completas disponibles en GitHub
C++:
- Las corrutinas de C++20 ahora se admiten en /std:c++latest y el encabezado <corrutina>.
- IntelliSense ahora proporciona compatibilidad con los encabezados <conceptos> y <rangos> de C++20, y para cambiar el nombre y buscar definiciones de concepto.
- Nuestro STL ahora es compatible con la mayoría de rangos de C++20.
- Las funciones miembro especiales triviales según determinadas condiciones ahora se admiten en MSVC.
- C11 y C17 ahora se admiten en los modificadores /std:c11 y /std:c17.
- Entre las mejoras adicionales de STL se incluye la compatibilidad total con std::atomic_ref, std::midpoint and std::lerp y std::execution::unseq, optimizaciones para std::reverse_copy y mucho más.
- Versión actualizada de CMake que se incluye con Visual Studio en CMake 3.18.
- Nuestras herramientas de análisis de código ahora admiten el estándar SARIF 2.1: el formato de registro de análisis estático estándar del sector.
- Si faltan herramientas de compilación en los proyectos de Linux, ahora se emitirá una advertencia en la barra de herramientas y una descripción clara de las herramientas que faltan en la lista de errores.
- Ahora puede depurar volcados de memoria principales de Linux en un sistema Linux remoto o en WSL directamente desde Visual Studio.
- Para la generación de comentarios Doxygen de C++, hemos agregado las opciones de estilo de comentario adicionales (/*! y //!).
- Anuncios de vcpkg adicionales
- Compatibilidad del compilador con lambdas en contextos no evaluados
- Rendimiento del vínculo /debug:full mejorado mediante la creación de pdb de multithreading. Varias aplicaciones de gran tamaño y juegos AAA ven una vinculación entre dos y cuatro veces más rápida.
- El depurador de Visual Studio ahora es compatible con char8_t.
- Compatibilidad con proyectos ARM64 mediante clang-cl.
- Compatibilidad con los intrínsecos de Intel AMX.
- Se ha agregado una nueva opción de vínculo,
legacy_stdio_float_rounding.obj
para habilitar el comportamiento heredado de imprimir valores de punto flotante, que se cambió en Dev16.2 para redondear correctamente los números de punto flotante que se pueden representar correctamente. Para obtener más información, consulte printf, _printf_l, wprintf, _wprintf_l.
- Compatibilidad con la depuración de volcado de memoria principal de .NET Core para Linux
- Análisis automático de .NET y .NET Core
- Análisis automático de la ruta de acceso activa de la memoria de .NET y .NET Core
Actualizaciones del editor de Razor experimental:
- Bombillas de Blazor
- Bombillas de C#
- Formato Razor mejorado
- Cambie el nombre de los componentes de Razor en el marcado de los archivos .razor
- Ir a definición en el espacio de nombres de etiquetas de componentes de Blazor
- Coloración al mantener el mouse en C#
- Coloración de información sobre herramientas de finalización de C#
- Adición de opciones para ir a la definición o implementación de Razor, incluidos los archivos cerrados
- Buscar todas las referencias en archivos de Razor cerrados
- Estabilidad y rendimiento de la edición en Razor mejorados para soluciones y proyectos de gran tamaño
Fakes con proyectos de estilo SDK:
- Al emplear la nueva compatibilidad de Fakes con los proyectos de estilo SDK, algunos usuarios han encontrado el siguiente error en el momento de generar correcciones de compatibilidad (shim)
- Más información sobre cómo usar todas las características de Git en nuestra nueva documentación en línea
- Apertura de la ventana Repositorio de GIT en cualquier momento a través de la ventana Cambios de Git, el menú Ver y la barra de estado
- Captura, extracción e inserción desde varios repositorios remotos en la ventana Cambios de Git
- Vista de mensajes correctos y de error para comandos de Git en la parte superior de la ventana Repositorio de GIT
- Creación de una rama a partir de un elemento de trabajo de Azure DevOps
- Apertura de un repositorio Git a partir de una lista de repositorios locales en el menú Git
- El proveedor de control de código fuente predeterminado ahora es Git en lugar de TFVC
- Un solo clic para cambiar entre los historiales de la rama en la ventana del repositorio de Git
- Vista y selección en una lista de soluciones del Explorador de soluciones después de abrir un repositorio
- Modificación de la vista de historial y búsqueda de confirmaciones mediante una barra de herramientas en la ventana del repositorio de Git
- Captura, extracción e inserción de las secciones de confirmaciones entrantes y salientes en el gráfico del historial de una rama
- Solicitudes para crear una solicitud de incorporación de cambios después de insertar una rama en el remoto
- Consulta de los nombres de las ramas en los comandos de combinación y fusión mediante cambio de base en el menú contextual de la lista de ramas
- Acceso a los comandos de Git a través del menú contextual en el Explorador de soluciones y el Editor
- Observación del progreso de clonación por medio de un nuevo cuadro de diálogo modal con la opción de mover el proceso a segundo plano
IntelliCode:
- Obtenga finalizaciones de IntelliCode personalizadas en la documentación de Visual Studio
- Mantenga actualizadas las finalizaciones de IntelliCode con el código base y compártalas como parte de la documentación del flujo de trabajo de CI del equipo
- Los analizadores de Roslyn ahora se incluyen en el SDK de .NET 5.0
- Refactorización que presenta la nueva sintaxis de coincidencia de patrones
not
de C# 9 cuando hay un operador de eliminación - Refactorización del método insertado para ayudar a reemplazar los usos de los métodos estáticos, de instancia y de extensión dentro de un solo cuerpo de la instrucción
- Corrección de código para convertir instancias de
typeof
ennameof
en C# yGetType
enNameOf
en Visual Basic - Compatibilidad de Visual Basic y C# con sugerencias de nombre de parámetro insertado que inserta elementos gráficos para literales, literales convertidos e instancias de objeto antes de cada argumento en las llamadas de función
- Refactorización que extrae miembros de una clase seleccionada a una nueva clase base en C# y Visual Basic
- Limpieza de código tiene nuevas opciones de configuración que pueden aplicar las preferencias de formato y encabezado de archivo establecidas en el archivo EditorConfig en un solo archivo o en toda una solución
- Corrección de código para quitar la palabra clave
in
allí donde el argumento no se deba pasar por referencia - Refactorización que presenta los nuevos combinadores de patrones de C#9 y sugerencias de coincidencia de patrones, como la conversión de
==
para usaris
cuando proceda - Corrección de código para convertir una clase en abstracta al intentar escribir un método abstracto en una clase que no lo es
- La finalización de IntelliSense en los literales de cadena DateTime y TimeSpan aparece automáticamente al escribirse la primera comilla
- Corrección de código para quitar
pragma suppressions
ySuppressMessageAttributes
innecesarios Rename
yFind All References
comprenden las referencias a símbolos dentro de la cadena de destino deSuppressMessageAttributes
globales- Se atenúa ByVal para indicar que no es necesario usarlo en combinación con una corrección de código para quitar el valor ByVal innecesario en Visual Basic
- Compatibilidad con ventanas interactivas para varios entornos de ejecución, como .NET Framework y .NET Core.
- Se ha agregado una nueva API RegisterAdditionalFileAction que permite a los autores de analizadores crear uno para archivos adicionales.
- Agregue su cuenta de GitHub con la experiencia de administración de cuentas
- En esta versión, la experiencia Buscar en archivos heredada ha quedado en desuso, de modo que todos los usuarios pasarán a usar la nueva experiencia. El equipo del Editor está trabajando con personas que dejan comentarios en Developer Community y que están teniendo problemas con la experiencia moderna de Buscar en archivos.
- El proveedor de publicación de ClickOnce ahora está disponible para las aplicaciones de escritorio de Windows de .NET Core 3.1 y .NET 5.0.
Ajuste del panel de detalles de la prueba del Explorador de pruebas:
- Ahora puede ajustar el texto en el panel de detalles de la prueba del Explorador de pruebas.
Herramientas XAML (WPF, UWP y Xamarin.Forms):
- Mejoras en el diagnóstico de errores de enlace XAML
- Configuración de recarga activa de XAML movida a "Depuración > Recarga activa"
- Rellenado del cuadro de herramientas a partir de paquetes NuGet sin referencia
JavaScript/TypeScript:
- El depurador de JavaScript/TypeScript ahora admite la depuración de trabajos del servicio, los trabajos web, iFrame y el código JavaScript de la página al mismo tiempo. Además, la nueva experiencia de depuración agrega compatibilidad para depurar las aplicaciones del servidor de nodo de back-end y JavaScript del lado cliente en el explorador simultáneamente. Esta característica sigue siendo experimental. Puede habilitar la nueva experiencia de depuración en el menú Opciones de depuración.
- Ahora puede desencadenar refactorizaciones en cualquier lugar donde puedan estar disponibles mediante el acceso directo de acción de código (ctrl +.). Ni siquiera hace falta que seleccione ningún texto: TypeScript ahora es lo suficientemente inteligente como para buscar las mejores refactorizaciones disponibles en la ubicación del cursor.
- Ahora puede ajustar los paquetes que busca TypeScript para la finalización de importaciones automática. Esto puede dar lugar a mejoras en el rendimiento en algunos proyectos con muchas dependencias. Para obtener más detalles, consulte TypeScript 4.0 (notas de la versión)[https://www.typescriptlang.org/docs/handbook/release-notes/typescript-4-0.html]
- Agregamos un mensaje en el panel de salida que muestra los tipos que instalamos para admitir IntelliSense. Recomendamos agregar un archivo tsconfig al proyecto para personalizar los tipos que se usan.
- Tenga en cuenta que incluimos el compilador TypeScript 4.0 y el servicio de lenguaje
Aviso de seguridad
CVE-2020-17100 Vulnerabilidad de alteración de Visual Studio
Existe una vulnerabilidad de manipulación cuando Herramientas de Python para Visual Studio crea la carpeta python27. Un atacante que se hubiera aprovechado de esta vulnerabilidad podría ejecutar procesos en un contexto con privilegios elevados.
Problemas que se tratan en esta versión
- Se corrigió un problema por el que, al compilar en Visual Studio 2019 16.7 con el valor long double de 80 bits del compilador de C++ de Intel, se emiten errores del compilador, lo que impide la creación de proyectos.
- Se corrigió un problema por el que Live Unit Testing se negaría a iniciarse en algunos escenarios.
- Se agregó .NET 5.0. RC2 a Visual Studio 2019 v16.8 Preview 4
- Se corrigió un error en el que una operación de Git ocasional comenzaría y nunca finalizaría.
- Se ha agregado funcionalidad adicional a la creación y conexión de Visual Studio Codespaces.
- Se ha corregido un error que causaba que Visual Studio 2019 se bloqueara o dejara de responder al cerrar las soluciones de ASP.NET Core o al navegar fuera de ellas.
- Se ha corregido un problema que hacía que el sistema del proyecto de C++ no pudiera cargarse después de desinstalar y volver a instalar Visual Studio 2019.
Detalles de las novedades de Visual Studio 2019, versión 16.8.0
C++
- Las corrutinas de C++20 ahora se admiten en /std:c++latest y el encabezado <corrutina>. La compatibilidad con nuestro comportamiento heredado está disponible en <experimental/coroutine> y el conmutador /await.
- IntelliSense ahora proporciona compatibilidad con los encabezados <conceptos> y <rangos> de C++20, y para cambiar el nombre y buscar definiciones de concepto. Hay una incidencia conocida que esperamos solucionar en la versión preliminar 4.
- Nuestro STL ahora es compatible con la mayoría de rangos de C++20. Puede realizar un seguimiento del progreso en nuestra incidencia de GitHub de rangos.
- Las funciones miembro especiales triviales según determinadas condiciones ahora se admiten en MSVC.
- C11 y C17 ahora se admiten en los modificadores /std:c11 y /std:c17.
- Entre las mejoras adicionales de STL se incluye la compatibilidad total con std::atomic_ref, std::midpoint and std::lerp y std::execution::unseq, optimizaciones para std::reverse_copy y mucho más. Puede encontrar todas las actualizaciones en nuestro Registro de cambios.
- Hemos actualizado la versión de CMake que se incluye con Visual Studio en CMake 3.18.
- Nuestras herramientas de análisis de código ahora admiten el estándar SARIF 2.1: el formato de registro de análisis estático estándar del sector. Puede obtener más información sobre el formato SARIF en la especificación oficial.
- Si faltan herramientas de compilación en los proyectos de Linux, ahora se emitirá una advertencia en la barra de herramientas y una descripción clara de las herramientas que faltan en la lista de errores.
- Ahora puede depurar volcados de memoria principales de Linux en un sistema Linux remoto o en WSL directamente desde Visual Studio.
- Para la generación de comentarios Doxygen de C++, hemos agregado las opciones de estilo de comentario adicionales (/*! y //!).
- Anuncios de vcpkg adicionales
- Hemos agregado compatibilidad del compilador con expresiones lambda en contextos no evaluados, lo que permite usarlas en especificadores decltype.
- El linter y las correcciones a medida que se escribe ahora están disponibles en Visual Studio. Configúrelo en Herramientas->Opciones->Editor de texto->C/C++->CodeStyle->Linter + Fixups (Linter + Correcciones).
instantáneas
Compatibilidad con la depuración de volcado de memoria principal de .NET Core para Linux
La depuración de volcados de memoria principal administrados de Linux en Windows ha sido muy difícil hasta ahora. Solía conllevar la configuración de otro entorno de Linux que se reflejaba exactamente en la producción y, posteriormente, la instalación de un conjunto de herramientas para el análisis. Afortunadamente, con Visual Studio 2019 16.8, versión preliminar 3, basta con arrastrar y colocar un volcado de memoria principal de Linux administrado directamente en el IDE e iniciar inmediatamente la depuración.
Análisis automático de .NET
La programación asincrónica ha existido durante años en la plataforma .NET pero, históricamente, hacerla bien ha sido difícil. Hemos incorporado analizadores de volcado de memoria administrada que permiten identificar los siguientes escenarios y antimodelos:
- Sync-over-Async
- Agotamiento de ThreadPool
Análisis automático de la ruta de acceso activa de la memoria de .NET y .NET Core
Esto permite a los clientes ver de forma intuitiva los tipos de objeto de dominación en su montón de memoria mediante anotaciones de llamas en la ventana de la herramienta Diagnostics Memory.
Problemas de correcciones de compatibilidad (shim) en Fakes con proyectos de estilo SDK
Al emplear la nueva compatibilidad de Fakes con los proyectos de estilo SDK, algunos usuarios han encontrado el siguiente error en el momento de generar correcciones de compatibilidad (shim).
Cannot generate shim for System.DateTime: type is not supported because of internal limitations
La versión 16.8, versión preliminar 3, incluye una corrección. Si usa una versión 16.7.*, puede recurrir a la siguiente solución alternativa:
- Añada <FakesUseV2Generation>False</FakesUseV2Generation> a un PropertyGroup en el archivo csproj.
- Agregue el <Fakes Include="Fakes\*.fakes" /> a un itemGroup en el archivo csproj.
- Agregue una referencia a los ensamblados generados de Fakes en ProjectDir/FakesAssemblies.
También puede seguir los comentarios de la comunidad de desarrolladores para conocer más novedades al respecto.
Actualizaciones del editor de Razor experimental
El nuevo editor de Razor experimental admite ahora las siguientes características de edición de Razor:
- Bombillas de Blazor:
- Extraer al código subyacente*:
- Crear componente a partir de etiqueta*
- Agregar directiva de
@using
para el componente - Nombre completo de etiqueta de componente
- Bombillas de C#
- Agregar directiva de
@using
- Nombre completo de tipo
- Agregar directiva de
- Formato Razor mejorado
- Cambie el nombre de los componentes de Razor en el marcado de los archivos .razor
- Ir a definición en nombres de etiquetas de componentes de Blazor
- Coloración al mantener el mouse en C#
- Coloración de información sobre herramientas de finalización de C#
- Buscar todas las referencias en archivos de Razor cerrados
- Estabilidad y rendimiento de la edición en Razor mejorados para soluciones y proyectos de gran tamaño
* Solo funciona en escenarios de Razor locales; todavía no se admite en Visual Studio Codespaces ni Live Share.
Para habilitar el editor de Razor experimental, vaya a Herramientas>Opciones>Entorno>Características en versión preliminar, seleccione Enable experimental Razor editor (Habilitar editor de Razor experimental) y reinicie Visual Studio.
IDE de Visual Studio 2019
- Agregue su cuenta de GitHub con la experiencia de administración de cuentas conocida de Visual Studio. El control de versiones, el terminal integrado y otras características podrán aprovechar las credenciales de la cuenta para satisfacer sus necesidades de autenticación de GitHub.
- El proveedor de publicación de ClickOnce ahora está disponible para las aplicaciones de escritorio de Windows de .NET Core 3.1 y .NET 5.0. Para empezar, haga clic con el botón derecho en el proyecto del Explorador de soluciones y seleccione Publicar, o bien seleccione el menú Compilar > Publicar <AppName>. ClickOnce se encuentra en la categoría de carpeta.
Productividad de Git
- Creación de una rama a partir de un elemento de trabajo de Azure DevOps
- Apertura de un repositorio Git a partir de una lista de repositorios locales en el menú Git
El proveedor de control de código fuente predeterminado ahora es Git en lugar de TFVC, que se puede cambiar en Herramientas - Opciones - Control de código fuente.
Un solo clic para cambiar entre los historiales de la rama en la ventana del repositorio de Git
Vista y selección en una lista de soluciones del repositorio en el Explorador de soluciones después de abrir un repositorio
Productividad de .NET
- Los analizadores de .NET Compiler Platform (Roslyn) inspeccionan el código de C# o Visual Basic para la seguridad, el rendimiento, el diseño y otras incidencias. A partir de .NET 5.0, estos analizadores se incluyen con el SDK de .NET. De forma predeterminada, los analizadores están habilitados para los proyectos que tienen como destino .NET 5.0 o una versión posterior. Puede habilitar el análisis de código en los proyectos que tengan como destino versiones anteriores de .NET estableciendo la propiedad EnableNETAnalyzers en true. Puede deshabilitar el análisis de código para el proyecto si establece EnableNETAnalyzers en false. También puede usar la ventana Propiedades del proyecto para habilitar o deshabilitar los analizadores de .NET. Para acceder a la ventana Propiedades del proyecto haga clic con el botón derecho en un proyecto en el Explorador de soluciones y seleccione Propiedades. Luego, seleccione la pestaña Análisis de código, donde puede activar o desactivar la casilla para Habilitar los analizadores de .NET.
- Ahora hay una refactorización que presenta la nueva sintaxis de coincidencia de patrones
not
de C# 9 cuando hay un operador de eliminación. Coloque el cursor en el operador de supresión. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Usar coincidencia de patrones.
- Ahora hay una refactorización de método insertado que permite reemplazar las utilizaciones de un método estático, de instancia y de extensión dentro de un cuerpo de instrucción único con una opción para quitar la declaración de método original. Coloque el cursor sobre la utilización del método. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione después una de las opciones siguientes:
Seleccione Inline <QualifiedMethodName>
para quitar la declaración del método insertado: .
Seleccione Inline and keep <QualifiedMethodName>
para conservar la declaración del método original: .
La creación de un archivo nuevo de C# o Visual Basic a partir de una plantilla respeta la configuración del estilo de código EditorConfig. Los estilos de código siguientes se aplicarán automáticamente al crear archivos nuevos: encabezados de archivo, ordenación mediante directivas y colocación de directivas Using dentro o fuera de los espacios de nombres.
Ahora hay compatibilidad de Visual Basic y C# con sugerencias de nombre de parámetro insertado que inserta elementos gráficos para literales, literales convertidos e instancias de objeto antes de cada argumento en las llamadas de función. En primer lugar, debe activar esta opción en Herramientas>Opciones>Editor de texto>C# o en Basic>Avanzado y seleccionar Mostrar sugerencias de nombre de parámetro insertado (experimental). Las sugerencias de nombre de parámetro insertado aparecerán en el archivo de C# o Visual Basic.
- Ahora puede extraer miembros de una clase seleccionada en una nueva clase base con la refactorización de la nueva opción Extract Base Class (Extraer a clase base). Coloque el cursor en el nombre de la clase o en un miembro resaltado. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Extraer miembros a una nueva clase base. Se abrirá el nuevo cuadro de diálogo Extract Base Class (Extraer clase base), donde puede especificar el nombre de la clase base y la ubicación donde debe colocarse. Puede seleccionar los miembros que quiere transferir a la nueva clase base y elegir que los miembros sean abstractos activando la casilla de la columna Convertir en abstracto.
Una vez que seleccione Aceptar verá la nueva clase base agregada junto con sus miembros.
- Ahora hay una corrección de código para convertir instancias de typeof(
<QualifiedType>
).Name a nameof(<QualifiedType>
) en C# e instancias de GetType(<QualifiedType>
).Name a NameOf(<QualifiedType>
) en Visual Basic. El uso de nameof en lugar del nombre del tipo evita las reflexiones implicadas al recuperar un objeto. Coloque el cursor en typeof(<QualifiedType>
).Name. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione después una de las opciones siguientes:
En C#, seleccione Convertir typeof
en nameof
:
En Visual Basic, seleccione Convertir GetType
en NameOf
:
- Limpieza de código tiene nuevas opciones de configuración que pueden aplicar las preferencias de formato y encabezado de archivo establecidas en el archivo EditorConfig en un solo archivo o en toda una solución.
- Ahora hay disponible una corrección de código para quitar la palabra clave
in
allí donde el argumento no se deba pasar por referencia. Coloque el cursor en el error. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Remove 'in' keyword (Quitar palabra clave "in").
- Ahora hay disponible una refactorización que presenta nuevos combinadores de patrones de C#9. Junto con las sugerencias de coincidencia de patrones, como la conversión de
==
para usaris
cuando corresponda, esta corrección de código también sugiere los combinadores de patronesand
,or
ynot
en los casos de coincidencia entre varios patrones diferentes y negar valores. Coloque el cursor dentro de la instrucción. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Usar coincidencia de patrones.
- Ahora hay disponible una corrección de código para convertir una clase en abstracta al intentar escribir un método abstracto en una clase que no lo es. Coloque el cursor sobre el error del método. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Make class 'abstract' (Convertir la clase en "abstracta").
- En 16.7 (versión preliminar 1) agregamos una finalización de IntelliSense en los literales de cadena DateTime y TimeSpan. En esta versión, esta lista de finalización aparece automáticamente cuando se escribe la primera comilla. En el pasado, era necesario escribir (Ctrl+espacio) para ver esta lista de finalización. Coloque el cursor dentro del literal de cadena DateTime o TimeSpan, y escriba la primera comilla doble. Aparecerán las opciones de finalización y una explicación de lo que cada carácter significa. Se proporcionará el formato de fecha y hora y un ejemplo.
- Ahora hay disponible una corrección de código para quitar las supresiones de pragma y los elementos
SuppressMessageAttributes
innecesarios. Coloque el cursor sobre la advertencia de pragma o el elementoSuppressMessageAttribute
. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Remove unnecessary suppression (Quitar supresión innecesaria).
- Las opciones Cambiar nombre y Buscar todas las referencias ahora comprenden las referencias a los símbolos dentro de la cadena de destino de las supresiones de
SuppressMessageAttribute
globales.
- Visual Basic tenía varias maneras de pasar parámetros, ByVal y ByRef, y durante mucho tiempo ByVal ha sido opcional. Ahora se atenúa ByVal para indicar que no es necesario usarlo en combinación con una corrección de código para quitar el valor ByVal innecesario. Coloque el cursor sobre la palabra clave ByVal. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione 'ByVal' keyword is unnecessary and can be removed (La palabra clave "ByVal" no es necesaria y se puede quitar).
- Se ha agregado compatibilidad con ventanas interactivas para varios entornos de ejecución, como .NET Framework y .NET Core.
- Ahora hay una nueva API RegisterAdditionalFileAction que permite a los autores de analizadores crear uno para archivos adicionales.
Ajuste del panel de detalles de la prueba del Explorador de pruebas
Esta característica muy solicitada permite al usuario seleccionar el ajuste de texto o dejar la alineación de línea de texto predeterminada. Cuando no se necesita la alineación del texto, el ajuste puede hacer que los comentarios de una serie de pruebas sean mucho más fáciles de leer y elimina la necesidad de una barra de desplazamiento horizontal. Puede habilitar esta característica en el menú de configuración del Explorador de pruebas o en el menú contextual del panel de resumen.
Herramientas XAML (WPF, UWP y Xamarin.Forms)
Mejoras en el diagnóstico de errores de enlace XAML
Los desarrolladores que trabajan en proyectos de WPF, UWP, WinUI y Xamarin.Forms a menudo deben detectar y resolver errores de enlace de datos de XAML en sus aplicaciones. Para mejorar las herramientas de diagnóstico en este escenario, hemos agregado dos nuevas experiencias a la versión 16.8 de Visual Studio 2019 o a otra más reciente:
- Icono de indicador de error de enlace XAML: un nuevo icono de indicador de error de enlace XAML está presente ahora en la barra de herramientas de la aplicación para los proyectos de WPF y UWP, así como en el árbol visual dinámico para todos los proyectos XAML, incluido Xamarin.Forms. Este icono mostrará un indicador rojo si se detecta al menos un error de enlace. Al hacer clic en el icono, también se le dirigirá a la nueva ventana de errores de enlace XAML.
- Ventana de errores de enlace XAML: la nueva ventana de errores de enlace XAML ya está disponible para los proyectos de WPF, UWP, WinUI y Xamarin.Forms. Esta nueva experiencia dedicada proporciona una interfaz de usuario enriquecida a través de la información sobre el error de enlace que anteriormente solo estaba disponible en la ventana de salida. Entre las mejoras se incluye la capacidad de ver los errores como un conjunto de columnas que se pueden ordenar, personalizar y que permiten realizar búsquedas totalmente. También hemos agrupado errores similares, lo que limita el ruido que puede producirse durante una combinación determinada de errores de plantillas de enlace de datos y, al mismo tiempo, sigue permitiendo que toda la información sobre el error sin procesar original esté disponible y que se pueda copiar fácilmente a través de una opción del menú contextual (nota: se requiere la versión de Xamarin 4.5.0.266-pre3 o posterior)
- Vaya al origen en busca de errores de enlaces:en colaboración con el equipo de WPF, hemos habilitado la posibilidad de ir al origen de los errores de enlaces para los clientes que tienen como destino WPF en .NET 5 (RC2 o más reciente).
Recarga activa de XAML
- “Solo cambios” de Xamarin.Forms, Recarga activa de XAML ahora admite UWP: en esta versión, comenzamos a ofrecer soporte técnico de lanzamiento para una característica muy solicitada que solo permite nuevos cambios de compatibilidad con Recarga activa de XAML en los proyectos de Xamarin.Forms cuando el destino es UWP. Tenga en cuenta que esta característica aún está en desarrollo y mientras la edición de XAML desencadenará ahora las actualizaciones en la aplicación en ejecución, otras características como la barra de herramientas de la aplicación (selección de elementos, etc.) aún no están totalmente implementadas, pero lo estarán en una futura versión.
- La configuración de Recarga activa de XAML se ha desplazado a “Depuración > Recarga activa”: En esta versión, hemos consolidado la configuración de recarga activa de XAML en WPF, UWP y Xamarin.Forms en una pantalla de configuración unificada en "Depuración > Recarga activa". También hemos habilitado por primera vez la capacidad de deshabilitar o habilitar Recarga activa de XAML en cada plataforma para darle un control total sobre la disponibilidad de esta característica. (Nota: Durante esta migración no se cambiará ninguna configuración, por lo que todas las opciones existentes seguirán en vigor solo en esta nueva ubicación)
Editor de código XAML:
- Compatibilidad con IntelliSense de WinUI 3.0:en esta versión, hemos habilitado una compatibilidad con IntelliSense mejorada para desarrolladores que crean aplicaciones con la nueva WinUI 3.0 (versión preliminar 3) o una versión más reciente. Para obtener más información sobre WinUI 3.0, consulte la documentación y para proporcionar comentarios, visite el repositorio de GitHub Windows UI XAML. Nota: Se recomienda la WinUI 3.0 (versión preliminar) más reciente en 16.9 (versión preliminar 1) para la experiencia de herramientas actualizada.
- Mejora de la compatibilidad con MVVM: al crear un documento XAML, puede establecer d:DataContext para obtener IntelliSense de enlace precisa para el documento XAML. En el pasado, especificar manualmente el tipo de contexto de datos era engorroso; tenía que salir del documento XAML, buscar el tipo de modelo de vista deseado, copiar y pegar su espacio de nombres y nombrarlo en la declaración d:DataContext. En esta versión, se presenta una característica nueva que permite declarar rápidamente un d:DataContext a través de una bombilla que sugiere posibles candidatos de modelo de vista.
Extensibilidad
- Rellenado del cuadro de herramientas a partir de paquetes NuGet sin referencia: en esta versión, hemos agregado compatibilidad con los archivos VisualStudioToolsManifest.xml específicos de TargetFrameworkMoniker al rellenar el cuadro de herramientas con controles a partir de paquetes NuGet sin referencia. Así pues, por ejemplo, el paquete podría exponer diferentes conjuntos de controles a proyectos de .NET Core 3.1 y .NET 5.0.
De Developer Community
- No se pueden compilar aplicaciones de WPF destinadas a .NET 5
- Al usar msbuild.exe desde la línea de comandos de Xamarin.iOS, se producía un bloqueo al finalizar el proceso
- Si se deshabilitaba IntelliCode 2.2.733.31896, se interrumpía TypeScript 3.x con un error CompositionFailedException al editar un archivo .ts
- Typescript para IntelliSense se detenía de forma continua
- VS 2019 C++: se generaba un código no valido con Optimize
- Los informes de tareas en segundo plano mostraban de forma continua el mensaje "C/C++ IntelliSense Operation in progress" (Operación de IntelliSense para C/C++ en curso)
- Error del diseñador de WPF:La ruta de acceso del nodo calculado no es válida -- null->Window:Grid
- El proceso de la versión preliminar 4 de Visual Studio 16.8.0 desaparecía
- Al desplazarse por la ventana Configuración de excepciones, se producía un bloqueo de VS
- La macro USE_ATL_THUNK2 de atlstdthunk.h no puede estar sin definir
- Bloqueos frecuentes de Visual Studio Community 2019 16.7.x
- Visual Studio se bloquea al ir al Administrador de paquetes de NuGet
- asan con avx2 informa un desbordamiento del búfer de pila
- No se puede cerrar Visual Studio: no se puede acceder a un objeto eliminado
- Se encontró una excepción de tipo NullReferenceException.
- Problemas con la plantilla de Visual Basic Analyzer
- VS se bloquea al escribir en el archivo .cs
- Las nuevas comprobaciones de las variantes de Code Analysis para C++ (VS 2019 Update 8 Preview 3) no funcionan
- La apertura de una solución de C++ con archivos de dependencia externos hace que las pestañas del archivo de dependencia externa muestren el mensaje "Se ha producido un error…"
- Las compilaciones de C++ con Windows SDK 8.1 dan error después de la actualización a Visual Studio 16.7
- Regresión de ARM64 C++: 16.4 -> 16.5+.
- csproj ha cambiado en el disco. Cierre el editor y vuelva a abrirlo
- ServiceHub.Host. CLR.x64 ha dejado de funcionar
- ASAN x64: CMake no parece ser compatible
- Error intermitente en la compilación de C++ para WSL en VS2019 cuando Máximo de trabajos de compilación en paralelo se establece en el número de procesadores disponibles
- Al regenerar el proyecto se quita la carpeta de salida completa (compilación remota)
- VS2019 sigue borrando el directorio CMakeBuild cada vez que se toca CMakeFiles.txt o CMakeSettings.json
- No se pudo cargar IntelliCodeCppPackage
- Error de compilación en la configuración de WSL del proyecto de CMake causada por el prefijo "/mnt/"
- CMake : las variables de entorno creadas en CMakeSettings.json ya no se expanden desde la actualización a VS 16.7
- Comparación de esquemas no evalúa las variables SQLCMD al comparar DACPAC con el código fuente del proyecto
- La separación de la compilación y la depuración no debe implementar archivos .o
- El módulo con la partición no se compilará
- Obtención del mensaje "En proceso" al cambiar a una pestaña .
- Depurador de Visual Studio 2019 confundido por varias variables con el mismo nombre .
- El delimitador de literal de cadena se resalta después del corchete .
- No se puede definir una corrutina con un elemento promise_type que no sea construible de forma predeterminada .
- C/C++ IntelliSense: No aparecen listas de miembro tras escribir var. tras un operador aritmético en archivos C
- Las referencias de CodeLens no se actualizan al realizar cambios en el código en otro archivo .
- Ir a definición va al constructor std::function en lugar de a la clase del argumento lambda .
- El compilador del sombreador HLSL no puede crear el directorio de salida para los archivos de encabezado .
- Error inesperado C2027: uso de un tipo no definido al usar plantillas con /permissive .
- D9025: reemplazar "/sdl-" por "/GS-" .
- Parece que a constexpr no le gustan las referencias al puntero .
- El documento ya está abierto como proyecto o solución y no se puede abrir en un editor en este momento.
- Cobertura en la expresión switch quitada en 16.7.
- Activación de la advertencia C5045, aunque se haya deshabilitado .
- Xamarin.Forms no puede crear un archivo para iOS.
- CImage::Draw() tiene una llamada ambigua a DrawImage() en 16.7.0 Preview1
- Faltan vistas al cargar un proyecto de "Abrir carpeta" con el icono de la barra de tareas anclado
- C++: el compilador selecciona un candidato de sobrecarga incorrecto
- No se puede crear un proyecto VSIX de VB con corrección de código
- VS2019 Buscar resultados que no usen la configuración de fuente/color
- La edición de un archivo. editorconfig en una solución grande hace que el editor se ralentice extremadamente, aumente el uso de CPU y RAM y, en ocasiones, se bloquee
- Los resultados de la búsqueda de Ctrl+F se muestran como texto, pero quiero ver los resultados en la nueva ventana de resultados de la búsqueda estructurada
- El botón Publicar no está visible
- La opción Guardar no guarda el contenido.
- El nombre del proyecto o la solución no puede tener más de 60 caracteres.
- Tiene un mensaje relativo a una nueva licencia disponible para Visual Studio Enterprise 2019.
- La vista de Git con el modo oscuro no tiene un aspecto correcto.
- Visual Studio 2019 se bloquea mientras realiza un análisis de código en segundo plano y no recupera los archivos.
- No se pudo agregar una cuenta de Apple Developer con la autenticación en dos pasos.
- La expresión fold en noexcept genera un error de sintaxis.
- Barra dorada que sigue a la excepción RPC en StreamPipeReader.AdvanceTo: no hay ninguna operación de lectura que completar.
- El proyecto de SQL Server se bloquea al editar columnas con el panel de diseño.
- Visual Studio 2019 Preview: el repositorio ssh+git:// no solicita credenciales, sino que informa de un error.
- Std::enable_if no quita el operador de conversión del conjunto de sobrecarga.
- La página de solicitud de incorporación de cambios no funciona.
- Hay un problema con Enable_if_t SFINAE.
- Std::condition_variable::wait_for(0) no deshace el bloqueo.
- El compilador no detecta la aceptación de la dirección de un elemento temporal.
- Se produce una excepción NullPointerException al cambiar el nombre de una clase junto con el archivo del símbolo.
Problemas conocidos
Consulte todos los problemas abiertos y las soluciones alternativas disponibles en Visual Studio 2019 en el vínculo siguiente.
Comentarios y sugerencias
Nos encantaría que nos diera su opinión. Puede informarnos de un problema mediante la opción Notificar un problema de la esquina superior derecha del instalador o del propio IDE de Visual Studio. El icono se encuentra en la esquina superior derecha. Puede realizar una sugerencia de producto o un seguimiento de los problemas en la comunidad de desarrolladores de Visual Studio, donde podrá hacer preguntas, encontrar respuestas y proponer nuevas características. También puede obtener ayuda gratuita para la instalación a través de nuestro servicio de soporte técnico de chat en directo.
Blogs
Saque partido de la información y de las recomendaciones disponibles en los blogs de Developer Tools que le mantendrán al día sobre las nuevas versiones y con publicaciones con mucha información sobre una gran variedad de características.
Historial de notas de la versión de Visual Studio 2019
Para obtener más información sobre versiones anteriores de Visual Studio 2019, consulte la página Historial de notas de la versión de Visual Studio 2019.