Share via


Visual Studio IconNotas de la versión de Visual Studio 2022 para Mac, versión 17.0


Developer Community | Requisitos del sistema | Documentación | Blogs | Mantenimiento |


Download


NewReleaseIconActualización 17.0.6: esta actualización soluciona estos problemas.

Actualización 17.0.5: esta actualización soluciona estos problemas.

Actualización 17.0.4: esta actualización soluciona estos problemas.

Actualización 17.0.3: esta actualización soluciona estos problemas.

Actualización 17.0.2: esta actualización soluciona estos problemas.

Actualización 17.0.1: esta actualización soluciona estos problemas.

Novedades de Visual Studio 2022 para Mac

Le damos la bienvenida a la versión 17.0 de Visual Studio 2022 para Mac. Esta es la versión de Visual Studio para Mac más rápida, con una nueva interfaz de usuario nativa de macOS, que se ejecuta totalmente en .NET 6 y optimizada para los procesadores Apple Silicon (ARM64). Algunos de los aspectos más destacados de esta versión son:

Entradas del blog de Visual Studio 2022 para Mac

El blog de Visual Studio 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 2022 para Mac en las siguientes publicaciones:

Mejoras generales del IDE

Nueva interfaz de usuario nativa de macOS

Le hemos dado una nueva apariencia a Visual Studio para Mac que combina la interfaz de usuario de macOS moderna con la experiencia productiva en Visual Studio que ya conoce y le encanta. Algunos de los cambios más visibles son:

  • Interfaz de usuario actualizada en todas las ventanas de herramientas, preferencias y pestañas de documentos.
  • Nuevos temas claro y oscuro que se pueden sincronizar con la configuración del tema de macOS.
  • Nueva barra de estado que notifica el estado del IDE en el pie de página y resalta el número de advertencias o errores en una solución.

Compatibilidad para ejecutarse de forma nativa en los procesadores Apple Silicon (ARM64)

El IDE ahora se ejecuta de forma nativa en los procesadores Apple Silicon (ARM64), como el procesador M1. Esta fue una de las solicitudes más aclamadas por los clientes en nuestro sitio de Developer Community. Entre otras mejoras, las soluciones de gran tamaño se cargan ahora hasta un 50 % más rápido.

Ejecución del IDE en .NET 6

El IDE se ejecuta ahora en el entorno de ejecución de .NET 6, mientras que antes se ejecutaba en el entorno de ejecución Mono. Además de proporcionar mejoras de rendimiento en todo el producto, esto también ha permitido el trabajo anterior para ejecutar el IDE de forma nativa en los procesadores Apple Silicon (ARM64).

Coherencia mejorada con Visual Studio (Windows)

Mejoras de accesibilidad

Como parte del cambio a la interfaz de usuario de macOS totalmente nativa, se ha mejorado la accesibilidad en todo el IDE:

  • Mejoras en la compatibilidad con VoiceOver en todo el conjunto de características.
  • Los temas claro y oscuro predeterminados se han actualizado para que coincidan mejor con los colores de macOS y mejorar el contraste.

Experiencia de acoplamiento de las ventanas de herramientas mediante arrastrar y colocar

Las ventanas de herramientas se pueden acoplar (pegar a un lado del IDE) arrastrándolas por el título y colocándolas encima de los iconos del IDE donde se quieren poner. Al arrastrar las ventanas, estos iconos de colocación facilitan la selección de un lado del IDE, o ventana, para colocar la ventana de herramientas.

Visual Studio 2022 for Mac with a file list (solution window) docked on the right side of the IDE. The window is then dragged and dropped to dock on the left side.

Se han corregido problemas importantes

Editor

Mejoras en el editor compartido

Navegación por subpalabra

Con Ctrl+Alt+Flecha izquierda y Ctrl+Alt+Flecha derecha se desplazará por subpalabra. Por ejemplo, la cadena "HolaMundo" identifica "Hola" y "Mundo" como subpalabras. Se ha agregado una nueva opción de Seleccionar subpalabra al hacer doble clic en Preferencias > Editor de texto > Comportamiento.

Experiencia de copiado/pegado de varios símbolos de inserción

Se ha mejorado la experiencia de copiado y pegado de varios símbolos de inserción. Anteriormente, al pegar varias líneas en varios símbolos de inserción, todo el Portapapeles se duplicaba en cada uno de ellos. Ahora, al pegar varias líneas en el mismo número de símbolos de inserción, cada línea se insertará en un símbolo de inserción correspondiente.

Para usar el control de varios símbolos de intercalación, pulse Control+Opción+clic de ratón y use Opción+Mayús+flecha para expandir las selecciones. A continuación, presione Ctrl+C para copiar el texto en varias selecciones. Use Control+Opción+clic de ratón para crear varios símbolos de inserción para cada línea que quiera pegar en las ubicaciones deseadas. Por último, presione Ctrl+V para pegar cada línea en su propio símbolo de inserción.

Multi-caret copy and paste

Herramientas del lenguaje de programación C#

Nuevas correcciones rápidas y refactorizaciones

En C# 8.0 se han incluido tipos de referencia que admiten un valor NULL, que permiten declarar si se espera un valor NULL. Para usar tipos de referencia que admiten un valor NULL, debe agregar el elemento <Nullable>enable</Nullable> al archivo de proyecto o agregar el elemento #nullable enable pragma a cada archivo de código fuente del proyecto. Para ayudar a simplificar este proceso, ahora se incluye automáticamente el elemento <Nullable>enable</Nullable> para nuevos proyectos de .NET.

En C# 10.0 presentamos un File-scoped namespace (Espacio de nombres con ámbito de archivo) que ofrece la opción de no anidar definiciones de clase dentro de un espacio de nombres. Ahora tenemos una refactorización para convertir un espacio de nombres en un espacio de nombres con ámbito de archivo. Para usar el espacio de nombres con ámbito de archivo, primero debe agregar el elemento <LangVersion>preview</LangVersion> al archivo del proyecto. A continuación, coloque el cursor en un espacio de nombres. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Convert to file-scoped namespace (Convertir en espacio de nombres con ámbito de archivo).

File-scoped namespace refactoring

Ahora hay una refactorización que prefiere is not null por encima de is object cuando se aplica a los tipos de valores. Para usar esta nueva refactorización, coloque el cursor en una comprobación de tipos. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Prefer null check over type check (Preferir comprobación NULL sobre la comprobación de tipo).

Una nueva refactorización Introducir parámetro puede mover un nuevo parámetro de la implementación del método a sus llamadores.

Etiquetas de excepción generadas automáticamente en comentarios de documentación XML

Los comentarios XML ahora generarán automáticamente una etiqueta <exception> dentro de una etiqueta <summary>, lo que le permite agregar una descripción cuando un método produce excepciones explícitamente.

Edición de Razor

Edición de F#

Se han corregido los principales problemas notificados en Developer Community:

Depuración

Se han corregido problemas importantes

Prueba

Se han corregido los principales problemas notificados en Developer Community:

Control de versiones de Git

Ventana Cambios de Git

Esta versión incorpora la ventana Cambios de Git de Visual Studio (Windows). Mientras usted realiza su trabajo, Visual Studio para Mac realiza un seguimiento de los cambios de archivo en el proyecto en la sección Cambios de la ventana Cambios de Git. Cuando se acerca el momento de hacer “commit” del trabajo, puede usar esta ventana para revisar todos los cambios que ha realizado, almacenarlos provisionalmente y hacer “commit” después. También puede usar esta ventana para guardar provisionalmente el trabajo, iniciar los comandos de incorporación y envío de cambios de Git, así como modificar un commit reciente.

The Visual Studio for Mac Git Changes window, open showing a list of files in a Changes list. A BasketService.cs file is in a Staged changes list.

Clonar un repositorio de GitHub y abrirlo en Visual Studio para Mac

Ahora se puede abrir Visual Studio para Mac al clonar un repositorio de Git desde el explorador, como en GitHub. Se ha agregado compatibilidad con el protocolo git-client://.

Se han corregido problemas importantes

Se han corregido los principales problemas notificados en Developer Community

NuGet

Se han corregido los principales problemas notificados en Developer Community

Nuevas opciones de agrupación y filtrado de búsqueda

La ventana Resultados de búsqueda incluye nuevas opciones de agrupación por archivo o carpeta, o de visualización de los resultados en una vista de árbol. También puede buscar en los resultados de la búsqueda.

Search Results window showing the results of a source code search. The window has a Group By dropdown set to

Se han corregido problemas importantes

Instalador

Se han corregido los principales problemas notificados en Developer Community

Desarrollo de .NET

Desarrollo con .NET 6

Ahora puede usar .NET 6 para compilar aplicaciones de consola o soluciones de ASP.NET Core para la Web o la nube. Visual Studio para Mac admite la versión más reciente de .NET 6, mientras continúa habilitando el desarrollo con .NET Core 3.1 y .NET 5. Más información sobre las mejoras de .NET 6.

Se han corregido problemas importantes

  • Se ha actualizado Mono a la versión 6.12.0.174 y se ha corregido CVE-2020-8927. La actualización de Mono también requiere actualizar Xamarin.iOS a la versión 15.8.0.3, Xamarin.Mac a la 8.8.0.3 y Xamarin.Android a la 12.2.4.3.
  • Se han actualizado los SDK de .NET a las versiones 6.0.203, 5.0.408 y 3.1.419, y hemos solucionando los errores CVE-2022-23267 y CVE-2022-29145.
  • Hemos actualizado el SDK de .NET Core a las versiones 6.0.200 y 5.0.405, con lo que se ha solucionado el error CVE-2022-21986.
  • En las máquinas de Apple Silicon (M1 o Arm64), los SDK de .NET 5.0, 6.0 y .NET Core 3.1 x64, publicados en noviembre, no son compatibles con Visual Studio para Mac 17.0, versión preliminar 3. Esto se debe a que los nuevos SDK de .NET x64 se instalan en un directorio diferente y Visual Studio para Mac actualmente solo admite la ubicación de instalación original del SDK de .NET, que ahora solo usa el SDK de Arm64.

Desarrollo de Azure

  • Ahora se admite Azure Functions v4 para .NET 6 en todas las plataformas.
  • Se ha agregado compatibilidad completa con Azure Functions en x64 y Azure Functions v4 en Arm64. Azure Functions v2 y v3 no se admiten en Arm64. Consulte los problemas conocidos.
  • Se ha corregido un problema por el que, en el desarrollo de un proyecto de Blazor Server en máquinas M1, se pierde la información de la página del explorador abierta y la interfaz se muestra incorrectamente.

Se han corregido problemas importantes

Se han corregido los principales problemas notificados en Developer Community

Unity: desarrollo de juegos

Se han corregido los principales problemas notificados en Developer Community

Xamarin: desarrollo móvil

  • Se ha agregado compatibilidad con Xcode 13.3

Al compilar proyectos basados en Xamarin tradicionales o mono con el MSBuild basado en Mono a partir de Visual Studio para Mac 17.0, versión preliminar 7, ahora puede compilar con la MSBuild proporcionada por el SDK de .NET o MSBuild en Mono.

De forma predeterminada, los proyectos clásicos de Xamarin y los proyectos de estilo sdk destinados a .NET v4.x se compilarán con MSBuild en Mono.

Si la solución contiene cualquier proyecto que requiera compilar con MSBuild en Mono todos los proyectos de esa solución se compilarán con MSBuild en Mono. Esto evitará errores de compilación debido a diferencias de comportamiento entre las dos MSBuild diferentes cuando los proyectos clásicos hacen referencia a proyectos de estilo sdk.

Si la solución no contiene ningún proyecto que requiera compilar con MSBuild en Mono, se compilará con MSBuild proporcionado por el SDK de .NET.

Además, algunos paquetes de NuGet pueden contener tareas de MSBuild que no admitan MSBuild desde el SDK de .NET y pueden requerir la compilación con MSBuild en Mono. Un error de MSB4062 que dice “No se pudo cargar el archivo o ensamblado 'Microsoft.Build.Utilities.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” es un ejemplo de una tarea MSBuild incompatible que se está usando. Para solucionar esto, deberá configurar manualmente la solución para compilar con MSBuild en Mono:

  • Vaya a Opciones de solución haciendo clic con el botón derecho en la solución en la ventana Solución y seleccionando Opciones.
  • Seleccione "Compilar > General"
  • Active la casilla "Compilar con MSBuild en Mono" para compilar con MSBuild en Mono

Se han corregido problemas importantes

Se han corregido los principales problemas notificados en Developer Community

Lenguajes de programación

C# 10

  • Estructuras de registros y expresiones with en estructuras (record struct Point(int X, int Y);, var newPoint = point with { X = 100 };).
  • Directivas using globales: las directivas global using evitan repetir las mismas directivas using en muchos archivos del programa.
  • Asignación definitiva mejorada: el análisis de asignación definitiva y nulabilidad controla mejor los patrones comunes, como dictionary?.TryGetValue(key, out value) == true.
  • Cadenas interpoladas constantes: las cadenas interpoladas compuestas por constantes son en sí mismas constantes.
  • Patrones de propiedad extendidos: los patrones de propiedad permiten acceder a miembros anidados (if (e is MethodCallExpression { Method.Name: "MethodName" })).
  • Registro ToString sellado: un registro puede heredar un registro base con un objeto ToString sellado.
  • Generadores de código fuente incrementales: mejore la experiencia de generación de código fuente en proyectos grandes con el desglose de la canalización de generación de código fuente y el almacenamiento en caché de los resultados intermedios.
  • Desconstrucciones mixtas: se pueden combinar asignaciones de desconstrucción y declaraciones de desconstrucción ((existingLocal, var declaredLocal) = expression).
  • AsyncMethodBuilder de nivel de método: el objeto AsyncMethodBuilder que se usa para compilar un método async se puede invalidar localmente.
  • Directiva de intervalo #line: permite a los generadores de código fuente, como Razor, el control específico de la asignación de líneas con directivas #line que especifican el intervalo de destino (#line (startLine, startChar) - (endLine, endChar) charOffset "fileName").
  • Mejoras en expresiones lambda: se permiten atributos y tipos de valor devuelto en las expresiones lambda; las expresiones lambda y los grupos de métodos tienen un tipo de delegado natural (var f = short () => 1;).
  • Controladores de cadena interpolada: los tipos de controlador de cadena interpolada permiten aplicar un formato eficaz a las cadenas interpoladas en asignaciones e invocaciones.
  • Espacios de nombres con ámbito de archivo: los archivos con un único espacio de nombres no necesitan sangría ni llaves adicionales (namespace X.Y.Z;).
  • Constructores de estructuras sin parámetros: admiten constructores sin parámetros e inicializadores de campo de instancia para tipos de estructura.
  • CallerArgumentExpression: este atributo permite capturar las expresiones que se pasan a un método como cadenas.

Consulte el estado de la característica de lenguaje de C# y los cambios importantes para obtener más información.


Versiones de Visual Studio 2022 para Mac

17.0.6Visual Studio 2022 para Mac, versión 17.0.6NewReleaseButton

17.0.6, compilación 4, publicada el 12 de julio de 2022

Esta versión se centra en corregir los siguientes problemas encontrados en las versiones v17.0.x:

  • Hemos actualizado los SDK de .NET a las versiones 6.0.302 y 3.1.421.
  • Hemos corregido un problema por el que Visual Studio para Mac podía bloquearse al iniciar el actualizador.

17.0.5 Visual Studio 2022 para Mac, versión 17.0.5NewReleaseButton

17.0.5, compilación 6, publicada el 28 de junio de 2022

Esta versión se centra en corregir los siguientes problemas encontrados en las versiones v17.0.x:

  • Se ha corregido un problema por el que el estado de Git podía dejar de estar sincronizado con el índice de Git.
  • Se han corregido los problemas notificados en Developer Community:

17.0.4 Visual Studio 2022 para Mac, versión 17.0.4

17.0.4, compilación 23, publicada el 21 de junio de 2022

Esta versión se centra en corregir los siguientes problemas encontrados en las versiones v17.0.x:

17.0.3 Visual Studio 2022 para Mac, versión 17.0.3

17.0.3, compilación 21, publicada el 14 de junio de 2022

Esta versión se centra en corregir los siguientes problemas encontrados en las versiones v17.0.x:

17.0.2Visual Studio 2022 para Mac, versión 17.0.2

17.0.2, compilación 8, publicada el 7 de junio de 2022

Esta versión se centra en corregir los siguientes problemas encontrados en las versiones v17.0.x:

17.0.1Visual Studio 2022 para Mac, versión 17.0.1

17.0.1, compilación 72, publicada el 31 de mayo de 2022

Esta versión se centra en corregir los siguientes problemas encontrados en la versión 17.0:

Comentarios y sugerencias

Nos encantaría que nos diera su opinión. Puede informar de un problema mediante la opción Informar de un problema del IDE de Visual Studio para Mac. Puede realizar un seguimiento de sus comentarios, incluidas las sugerencias, en el portal de la Comunidad de desarrolladores.

Problemas conocidos

La siguiente es una lista de todos los problemas conocidos actuales de Visual Studio 2022 para Mac 17.0:

  • El desarrollo con .NET MAUI no se admite oficialmente en Visual Studio para Mac 17.0. La compatibilidad inicial se proporcionará en Visual Studio para Mac 17.3, actualmente en versión preliminar.
  • La ventana Tareas (lista TODO) no está disponible.
  • El kit de herramientas de expresiones regulares no está disponible.
  • Xamarin.UITest aún no se admite.
  • Problema conocido al agregar una cuenta de Apple desde la pestaña Aplicaciones en el editor de Info.plist.
    • Una vez agregada la cuenta, el identificador de Apple no se muestra y los perfiles de aprovisionamiento no se sincronizan hasta que se cierra y se vuelve a abrir Info.plist.
    • No se admite la sincronización de certificados y perfiles de aprovisionamiento de cuentas de desarrollador de Apple, excepto las cuentas que están diseñadas para usarse para las implementaciones de In-House. Para solucionar este problema, descargue los certificados y los perfiles de aprovisionamiento directamente desde el sitio web de la cuenta de desarrollador de Apple.
  • En los procesadores ARM64, se admite la herramienta dotnet-ef únicamente con proyectos cuyo destino sea ASP.NET Core 6.0 y versiones posteriores.
  • La CLI de dotnet no seleccionará los orígenes de paquetes NuGet protegidos que se hayan agregado o editado dentro del IDE. El IDE y la CLI todavía admiten los orígenes protegidos que proporcionan su propio proveedor de credenciales, como Azure DevOps. La restauración de paquetes también es compatible con el borrado de contraseñas en NuGet.config.
  • Escribir caracteres chinos en el terminal integrado puede hacer que el IDE se bloquee. Debido a esto, se ha deshabilitado temporalmente el terminal integrado para las configuraciones regionales Chino simplificado y Chino tradicional hasta que se pueda corregir este problema.
  • Al usar la compatibilidad integrada con Docker, si encuentra el problema "Error del programa de canalización 'docker': ERROR IRRECUPERABLE: No se pudo inicializar el distribuidor con el error 80131534" al intentar una depuración, cámbiele el nombre a la carpeta ~/vsdbg o quítela y vuelva a intentar la depuración.
  • Los proyectos de Xamarin y Mono no se compilarán si no hay ningún SDK de .NET instalado. La solución alternativa es instalar cualquier SDK de .NET.
  • En ocasiones, el uso de las acciones de corrección rápida para mover una clase a un archivo dará como resultado una ventana del editor en blanco. Al intentar guardar, no tendrá ningún efecto. Para solucionar el problema, salte entre varias pestañas del editor para actualizarlo y que el contenido del archivo vuelva a mostrarse.

Principio de página