Preguntas más frecuentes sobre el desarrollo de Aplicación de Windows

En estas preguntas más frecuentes se proporcionan respuestas a preguntas comunes sobre el desarrollo de aplicaciones de Windows, incluidas instrucciones sobre cómo elegir el marco adecuado para los proyectos. Temas cubiertos:

  • Introducción y el panorama de desarrollo de aplicaciones de Windows.
  • Desarrollo de aplicaciones solo Windows nativas con WinUI 3, Windows Presentation Foundation (WPF) y Windows Forms (WinForms).
  • Windows kit de desarrollo de software (SDK) y SDK de Aplicaciones para Windows.
  • Apuntar a Windows como parte de tu estrategia de desarrollo multiplataforma.
  • Desarrollo de aplicaciones híbridas y web con .NET MAUI, Blazor y ASP.NET Core.
  • Cómo elegir un enfoque al comprender las inversiones de Microsoft.

Windows entorno de desarrollo de aplicaciones

¿Dónde puedo encontrar una visión general sencilla de las tecnologías de desarrollo de Windows?

Para obtener una excelente revisión de las opciones actuales para los desarrolladores de Windows, vea el episodio de Windows Dev Chat, Elegir su plataforma de desarrollo ideal, en el que analizan WinUI, .NET MAUI, React Native, Blazor y Aplicaciones Web Progresivas (PWA).

También puede consultar la overview de las opciones de desarrollo de aplicaciones para desarrolladores de Windows.

¿Por qué sigue siendo crucial el desarrollo de aplicaciones cliente para la transformación digital moderna en la era de los servicios en la nube?

En la era de los servicios en la nube, el desarrollo de aplicaciones cliente sigue siendo un componente fundamental de la transformación digital moderna. Para los desarrolladores, la creación de aplicaciones cliente no solo es esencial para el alcance, sino para ofrecer interacciones dinámicas y significativas en los dispositivos de usuario.

Este es el motivo por el que importan las aplicaciones cliente:

  • Device Reach: Con más de 1.500 millones de dispositivos Windows y más de 5 mil millones de dispositivos Android e iOS globalmente, las aplicaciones cliente permiten traer sus aplicaciones directamente a los usuarios en sus dispositivos que prefieran.
  • puerta de enlace a Intelligent Services: Las aplicaciones cliente suelen ser las primeras interacciones que los usuarios tienen con los servicios. Ofrecen una interfaz enriquecida e interactiva que le permite mostrar características inteligentes y diferenciar su producto de otros.
  • Escalabilidad con Integración en la Nube: Una aplicación cliente bien integrada puede sincronizarse sin esfuerzo con los servicios en la nube de back-end, lo que permite el acceso a datos en tiempo real y una escalabilidad sin contratiempos a medida que crece la base de usuarios.
  • productividad mejorada y fidelidad del usuario: una aplicación diseñada cuidadosamente puede mejorar la productividad y mantener a los usuarios comprometidos con su producto o servicio a lo largo del tiempo.

Desarrollo de aplicaciones nativas exclusivamente para Windows

¿Qué es el SDK de Aplicaciones para Windows?

El SDK de Aplicaciones para Windows es una plataforma de desarrollo de aplicaciones Windows que permite crear aplicaciones de escritorio hermosas, modernas y compatibles con versiones anteriores (hasta Windows 10 1809). WinUI es el marco de interfaz de usuario que se incluye con SDK de Aplicaciones para Windows.

¿Cuál es la diferencia entre el SDK de Aplicaciones para Windows y el SDK de Windows?

Ambos son kits de desarrollo de software (SDK) que permiten compilar aplicaciones Windows.

El SDK de Aplicaciones para Windows es una nueva plataforma de desarrollo que permite crear aplicaciones de escritorio modernas que se pueden instalar en versiones de Windows (hasta Windows 10 1809). Al compilar con SDK de Aplicaciones para Windows, están disponibles las características más recientes de la plataforma de desarrollo de Windows. El SDK de Aplicaciones para Windows incluye WinUI.

El SDK de Windows es una plataforma de desarrollo que te permite crear aplicaciones para UWP y aplicaciones de win32/escritorio. Está diseñado en torno a Windows API que están acopladas a versiones concretas del sistema operativo.

La SDK de Aplicaciones para Windows no reemplaza el SDK de Windows. En su lugar, el SDK de Aplicaciones para Windows complementa el SDK de Windows. Proporciona una abstracción cómoda y desacoplada del sistema operativo en torno al amplio catálogo de api de sistema operativo de Windows que ya son accesibles mediante el SDK de Windows. Las aplicaciones creadas con SDK de Aplicaciones para Windows pueden seguir usando Windows API del SDK en función de las necesidades de funcionalidad. Con el tiempo, más funcionalidad del SDK de Windows se integrará en el SDK de Aplicaciones de Windows.

Estoy creando un nuevo equipo para desarrollar una aplicación solo Windows. ¿Por qué debo elegir desarrollar con un marco de Windows nativo como WinUI, WPF o WinForms?

Estas son algunas razones para elegir un marco nativo de Windows para tu aplicación exclusiva para Windows:

  • Performance: los marcos de Windows nativos están optimizados para aprovechar el hardware de Windows moderno, lo que proporciona experiencias de usuario rápidas y dinámicas.
  • Integration: Windows incluye una amplia variedad de API que permiten experiencias sofisticadas que solo están disponibles en Windows. Los marcos nativos proporcionan una integración profunda con estas características y API.
  • Native user experience: Native frameworks proporcionan una experiencia coherente en Windows dispositivos, lo que garantiza que la aplicación se ve y funciona perfectamente en todas partes.
  • Compatibilidad sin conexión: Los marcos nativos admiten escenarios sin conexión, lo que permite que las aplicaciones funcionen incluso sin conectividad a Internet.
  • Monetización: los marcos nativos se mantienen y admiten activamente por Microsoft, lo que garantiza el acceso a las actualizaciones y características más recientes.
Con qué marco debo usar para aprovechar las inversiones más recientes de Microsoft en el desarrollo de aplicaciones Windows?

Si está desarrollando una nueva aplicación exclusiva para Windows, recomendamos usar WinUI. WinUI es el marco de interfaz de usuario nativo más reciente para Windows desarrollo de aplicaciones y está diseñado para funcionar en una amplia gama de dispositivos Windows. Proporciona un marco de interfaz de usuario moderno y flexible para crear aplicaciones de Windows visualmente atractivas e interactivas. WinUI forma parte del SDK de Aplicaciones para Windows y funciona mejor con las versiones más recientes de Windows.

¿Puedo usar SDK de Aplicaciones para Windows / WinUI en mi aplicación de Windows existente?

Tenga en cuenta que WinUI (un marco de interfaz de usuario) se incluye con el SDK de Aplicaciones para Windows (un marco de desarrollo de plataforma Windows).

Por lo general, WinUI no se puede usar a menos que la aplicación esté lista para migrar completamente su marco de interfaz de usuario. Una característica denominada ISLAsXAML permite hospedar contenido de WinUI en otros marcos de interfaz de usuario (WPF, Win32). Consulta la documentación de Islas XAML para obtener más información.

Los elementos del SDK de Aplicaciones para Windows a menudo se pueden usar en aplicaciones de escritorio, en función de cómo se creó la aplicación existente. Las aplicaciones para UWP no son compatibles con SDK de Aplicaciones para Windows.

Esto significa que WPF/MFC/WinForms las aplicaciones pueden usar SDK de Aplicaciones para Windows API que no están relacionadas con WinUI. Entre los ejemplos se incluyen el ciclo de vida de la aplicación, las ventanas y las notificaciones del sistema.

Consulte Use el SDK de Aplicaciones para Windows en un proyecto existente para obtener más información.

Do Necesito usar Visual Studio para compilar aplicaciones WinUI?

Se recomienda encarecidamente usar Visual Studio 2026 o posterior para el desarrollo de WinUI. Las versiones de Visual Studio más recientes ofrecen características de desarrollo enriquecidas como Recarga activa e incluyen una carga de trabajo de desarrollo de aplicaciones WinUI que simplifica la configuración.

Otros IDE y flujos de trabajo pueden funcionar, pero Visual Studio actualmente es el único IDE compatible oficialmente para WinUI. Tenga en cuenta que MSBuild es necesario para compilar proyectos XAML o WinUI.

Obtención de un error "No se puede cargar el archivo DLL 'Microsoft.ui.xaml.dll'" al ejecutar mi aplicación. ¿Cómo lo arreglo?

Este error suele producirse en unpackaged escenarios de aplicación en los que el entorno de ejecución de SDK de Aplicaciones para Windows no se ha instalado en el equipo. Pruebe lo siguiente:

  • Si está ejecutando una aplicación packaged (el valor predeterminado recomendado), asegúrese de que está iniciando a través de Visual Studio con el MsixPackage perfil de inicio seleccionado (no el perfil ejecutable sin formato). El paso de empaquetado MSIX instala los componentes de tiempo de ejecución necesarios.
  • Si está ejecutando una aplicación unpackaged, debe instalar SDK de Aplicaciones para Windows runtime por separado antes de ejecutar la aplicación fuera de Visual Studio.
  • Si el error se produce durante el desarrollo, abra .csproj y confirme que la configuración de empaquetado coincide con el modelo de implementación: para las aplicaciones empaquetadas , omita la <WindowsPackageType> propiedad (o déjela en su valor predeterminado) y compile o ejecute el paquete MSIX; para aplicaciones sin empaquetar , establezca <WindowsPackageType>None</WindowsPackageType> y asegúrese de que ha llamado Bootstrap.Initialize() al inicio.

Consulte Deploy apps that use the SDK de Aplicaciones para Windows para obtener más información sobre los requisitos de implementación.

¿Cuál es la diferencia entre WinUI 3 y WinUI 2 para UWP?

WinUI (anteriormente denominado WinUI 3) es el marco de interfaz de usuario nativo más reciente para el desarrollo de aplicaciones de Windows. Proporciona un marco de interfaz de usuario moderno y flexible para crear aplicaciones de Windows visualmente atractivas e interactivas. WinUI forma parte del SDK de Aplicaciones para Windows y funciona mejor con las versiones más recientes de Windows.

WinUI para UWP (anteriormente conocido como WinUI 2) es un conjunto de controles y estilos de interfaz de usuario creados sobre UWP. Proporciona una apariencia moderna para aplicaciones para UWP y está diseñada para Windows 10.

Cuando construyo una aplicación usando SDK de Aplicaciones para Windows y WinUI, ¿estoy construyendo una "aplicación WinUI"?

Sí: "Aplicación WinUI" es el término recomendado. Las aplicaciones WinUI se conocen como "aplicaciones WinUI" porque WinUI para UWP no es un tipo de aplicación, sino un conjunto de componentes usados en aplicaciones para UWP.

¿Puedo actualizar incrementalmente mi aplicación para UWP con WinUI para controles de UWP a WinUI reemplazando gradualmente WinUI para componentes de UWP por componentes de WinUI?

No. SDK de Aplicaciones para Windows no se pueden usar en aplicaciones para UWP y WinUI para UWP no se puede mezclar con WinUI. Consulta Migrate de UWP a la SDK de Aplicaciones para Windows.

¿Qué tan difícil es migrar una aplicación para UWP a WinUI?

La migración de componentes de una interfaz de usuario suele ser sencilla (para C# y C++/WinRT). De lo contrario, el costo de la migración depende principalmente de:

  1. Archivo del proyecto y personalización de MSBuild: El esfuerzo de migración varía en función del uso avanzado de MSBuild.
  2. .NET API migration: las aplicaciones para UWP que usan .NET deben pasar a .NET 6 o posterior. En muchos casos, adoptar .NET 6 es sencillo.
  3. Bibliotecas de componentes de interfaz de usuario: Las bibliotecas deben tener versiones destinadas a WinUI.
  4. Si la aplicación para UWP está escrita en el C++/CX reemplazado ahora, se requiere cierta portabilidad de código fuente. Consulte Migrar a C++/WinRT desde C++/CX.

Para obtener más información, consulta Migrate de UWP a la SDK de Aplicaciones para Windows.

Si tengo una aplicación para UWP existente en la Tienda, ¿puedo publicar una nueva aplicación WinUI empaquetada con los mismos identificadores?

Sí, las aplicaciones actualizadas se pueden publicar sin actualizar la identidad de la aplicación. Los usuarios de la versión anterior se actualizarán a la nueva versión. Esto solo se aplica a las aplicaciones de escritorio. Xbox, HoloLens y aplicaciones de Surface Hub no se pueden migrar a WinUI.

¿Cómo puedo empaquetar/distribuir mi aplicación WinUI?

Consulte Introducción a la implementación.

¿Dónde puedo encontrar SDK de Aplicaciones para Windows guía de migración?

Consulta Migrate de UWP a la SDK de Aplicaciones para Windows.

¿Es necesario usar el marcado XAML si quiero usar WinUI?

No. Los controles de la interfaz de usuario se pueden crear en el código. Sin embargo, representar la interfaz de usuario en marcado XAML declarativo proporciona muchas ventajas, incluida una experiencia de desarrollador mejorada.

  • Migración de UWP a WinUI: se pueden reutilizar muchos componentes XAML y de interfaz de usuario, aunque se requieren algunos ajustes de sintaxis.
  • Migración de WPF a WinUI: muchos conceptos se transfieren, pero el conjunto de controles y las API difieren.
¿Visual Studio tiene un entorno de diseño visual o diseñador de interfaz de usuario para WinUI?

Todavía no. Se trata de una brecha conocida en la experiencia del desarrollador de WinUI. Herramientas como XAML Recarga activa pueden ayudar en muchos escenarios. El trabajo ha comenzado en un diseñador de interfaz de usuario de Visual Studio para WinUI en SDK de Aplicaciones para Windows 1.7, pero aún no hay ninguna fecha para el lanzamiento.

Does SDK de Aplicaciones para Windows incluir WinUI?

Sí. WinUI se distribuye como parte del SDK de Aplicaciones para Windows.

Does SDK de Aplicaciones para Windows incluir WinUI para UWP?

No. WinUI para UWP forma parte de la plataforma para UWP.

¿WinUI para UWP y WinUI se basan en la misma tecnología?

No del todo. Aunque WinUI se inició originalmente desde el código base de WinUI para UWP, son tecnologías distintas. Ambos son marcos de interfaz de usuario basados en XAML que funcionan entre .NET y C++, pero WinUI para UWP y WinUI no son compatibles entre sí.

¿Puedo usar WinUI sin usar SDK de Aplicaciones para Windows?

No. WinUI se distribuye como parte del SDK de Aplicaciones para Windows.

¿Puedo usar WinUI en una aplicación sin empaquetar?

Sí. Todas las tecnologías de la SDK de Aplicaciones para Windows, incluida WinUI, funcionan en aplicaciones sin empaquetar.

¿Cuál es la diferencia entre las islas XAML y WinUI?

Las islas XAML te permiten hospedar controles modernos basados en XAML junto con la interfaz de usuario de Win32 existente desde otros marcos, como WinForms y WPF.

En la actualidad, las islas XAML admiten la mayoría de los controles del sistema XAML y WinUI para aplicaciones UWP. Consulta Hospedar controles XAML de WinRT en aplicaciones de escritorio (islas XAML) para obtener más información. La compatibilidad con el hospedaje de controles WinUI está disponible a partir de SDK de Aplicaciones para Windows 1.4.

Si crea una aplicación WinUI, tendrá un aspecto moderno tanto en Windows 11 como en Windows 10?

Sí. La interfaz de usuario de la aplicación heredará los principios de diseño de la interfaz de usuario de Fluent más recientes en todas las versiones compatibles de Windows 11 y Windows 10, hasta la versión 1809, en escenarios empaquetados y sin empaquetar.

¿Puedo usar fondos Mica o Acrílico en aplicaciones integradas con SDK de Aplicaciones para Windows?

Sí. Consulte cómo aplicar Mica o Acrílico en aplicaciones de escritorio para Windows 11.

¿Dónde puedo encontrar ejemplos de WinUI?

Consulte Ejemplo y recursos. Algunos repositorios destacados:

Si ya he invertido mucho en WPF, ¿debo seguir usando WPF o considerar la posibilidad de migrar a WinUI?

Si ya ha invertido mucho en WPF, puede seguir usándolo para las aplicaciones existentes. WPF es un marco estable y maduro que se usa ampliamente para compilar aplicaciones de escritorio Windows.

Considere la posibilidad de usar .NET Upgrade Assistant para migrar aplicaciones de WPF Framework .NET a la plataforma de .NET más reciente. Analiza el código base y proporciona instrucciones sobre cómo actualizarlo.

Si creo una nueva aplicación de WPF, ¿se verá anticuada en comparación con otras aplicaciones nuevas de Windows?

Al desarrollar una aplicación de WPF con .NET 9 o posterior, puedes asegurarte de que tu aplicación coincida con el aspecto elegante y moderno de Windows 11. El nuevo tema Fluent para WPF presenta una estética contemporánea de Windows 11, con el modo de luz y oscuro integrado y la compatibilidad con el color de énfasis del sistema. Esto moderniza la apariencia de la aplicación y ofrece una experiencia de usuario pulida y cohesiva.

Mi equipo está cómodo creando aplicaciones winForms y se adapta a nuestras necesidades. ¿Deberíamos considerar la posibilidad de migrar a WinUI u otro marco?

Si WinForms satisface sus necesidades y su equipo está cómodo con él, puede seguir usando WinForms para las aplicaciones existentes. WinForms es un marco estable y maduro que se usa ampliamente para el desarrollo de Windows escritorio.

El equipo de WinForms continúa invirtiendo en la plataforma. Algunas áreas actuales de inversión incluyen:

  • Compatibilidad asincrónica con controles comunes
  • Modo oscuro
  • Flexibilidad de diseño
  • Características de seguridad de escritorio, como el acceso al portapapeles

Desarrollo nativo multiplataforma

¿Cuáles son algunas razones para crear aplicaciones nativas multiplataforma destinadas a Windows?

Si tiene como destino usuarios en varias plataformas de sistema operativo, la creación de aplicaciones multiplataforma con .NET MAUI o React Native puede ofrecer varias ventajas:

  • Alcanzar: Las aplicaciones multiplataforma llegan a un público mayor en diferentes dispositivos y sistemas operativos.
  • Reutilización del código: La reutilización del código entre plataformas reduce el tiempo de desarrollo y el costo. La creación de aplicaciones independientes para Windows, Android, iOS y macOS puede ser prohibitivamente costosa.
  • Experiencia coherente del usuario: Los marcos multiplataforma ayudan a proporcionar una apariencia coherente entre plataformas.
  • Integración: Las aplicaciones multiplataforma todavía se pueden integrar con servicios específicos de la plataforma para ofrecer una experiencia completa.
¿Estoy seguro de que las aplicaciones de .NET MAUI se ejecutarán bien en Windows?

Al compilar una aplicación .NET MAUI para Windows, la salida es una aplicación WinUI. Durante el desarrollo, .NET MAUI ofrece una única experiencia de .NET entre plataformas, pero genera código específico de la plataforma en segundo plano. Esto garantiza que .NET MAUI aplicaciones funcionen bien en cada plataforma y ofrecer una experiencia de usuario nativa.

Cómo puede .NET MAUI proporcionar API de dispositivos nativos en todas las plataformas?

.NET MAUI proporciona una experiencia de .NET unificada en Windows, iOS, Android y macOS. Abstrae más de 60 API específicas de la plataforma en un único conjunto de API multiplataforma, que abarca áreas como storage, redes y sensores de dispositivo. También se puede acceder a api específicas de la plataforma adicionales mediante la inserción de dependencias para proporcionar implementaciones especializadas por plataforma.

¿Puedo empezar con WinUI y, posteriormente, integrar .NET MAUI si finalmente quiero dirigir escenarios multiplataforma?

No en este momento. Aunque .NET MAUI usa WinUI al ejecutarse en Windows, los equipos que esperan tener como destino varias plataformas deben comenzar con .NET MAUI o React Native para escritorio.

Nuestro equipo tiene sólidas aptitudes de desarrollo de front-end web. ¿Deberíamos considerar el uso de React Native para escritorio?

Es posible que los equipos con experiencia de desarrollo web sólida quieran considerar React Native for Desktop. Incluye React Native para Windows y macOS. Con el enfoque "Learn once, write anywhere", se pueden usar las aptitudes existentes de JavaScript, TypeScript y React para compilar aplicaciones nativas de Windows y macOS.

React Native for Desktop representa la interfaz de usuario (UI) directamente en primitivos nativos, proporcionando rendimiento y capacidades nativas de la plataforma.

Consulte la documentación de React Native for Desktop para empezar.

Are cualquier otro dispositivo de Windows compatible con React Native for Desktop?

Las aplicaciones de React Native se pueden implementar en todos los dispositivos compatibles con Windows 10 y versiones posteriores, incluidos equipos, tabletas, 2 en 1s, Xbox y dispositivos de realidad mixta.

¿Qué debo usar si quiero compilar aplicaciones que funcionan en Windows y Xbox?

Si la aplicación necesita admitir Xbox, HoloLens o IoT, se recomienda UWP. SDK de Aplicaciones para Windows no admite estas plataformas. Para el desarrollo de juegos, usa el Kit de desarrollo de juegos de Microsoft.

¿Qué debo usar si quiero compilar aplicaciones que funcionan en Windows y Surface Hub?

Si el destino es Windows y Surface Hub, se recomienda UWP.

Desarrollo híbrido y web

¿Qué son las aplicaciones híbridas y por qué debo considerar la creación de una?

Las aplicaciones híbridas combinan lo mejor del desarrollo de aplicaciones web y nativas. Su núcleo se basa en tecnologías web como HTML, CSS y JavaScript, y está envuelto en un contenedor nativo que proporciona acceso a ciertas características nativas de la plataforma y hardware. También se pueden distribuir a través de tiendas de aplicaciones.

La principal ventaja es que las aplicaciones híbridas permiten crear una sola aplicación que se puede ejecutar en varias plataformas nativas y en la web, lo que reduce el tiempo de desarrollo y el costo. Entre los ejemplos de plataformas de desarrollo de aplicaciones híbridas se incluyen:

  • Electron para aplicaciones de escritorio
  • Ionic para aplicaciones móviles
  • .NET MAUI Blazor Hybrid para aplicaciones multiplataforma
¿Cómo construir aplicaciones web progresivas que se sientan nativas (las PWA) en Windows?

Consulte Desarrollo web en Windows y Descripción general de las aplicaciones web progresivas.

¿Qué es una aplicación híbrida de Blazor .NET MAUI?

Con .NET MAUI, las aplicaciones Blazor se pueden ejecutar de forma nativa en Windows, iOS, Android y macOS. Esto le permite crear aplicaciones cliente híbridas que combinen los componentes blazor y .NET MAUI en una sola aplicación cliente nativa, con acceso completo a las funcionalidades de la plataforma nativa.

Obtenga más información en ASP.NET Core Blazor Hybrid.

¿Los componentes web de una aplicación híbrida de .NET MAUI deben crearse con Blazor?

No. A partir de .NET 9, .NET MAUI incluye un control HybridWebView que permite hospedar otras interfaces de usuario basadas en JavaScript dentro de una aplicación nativa.

Esto permite hospedar angular, React, Vue u otras aplicaciones HTML/JavaScript dentro de una aplicación de .NET MAUI. El control híbrido proporciona interoperabilidad entre C# y JavaScript, por lo que el código de C# puede llamar a funciones de JavaScript y viceversa.

¿Puede algún otro tipo de aplicación nativa hospedar componentes híbridos de Blazor?

Sí. WPF y aplicaciones winForms también pueden hospedar componentes híbridos de Blazor, lo que permite agregar la interfaz de usuario web moderna a las aplicaciones existentes. Esto no se admite para aplicaciones de WPF o WinForms basadas en .NET Framework.

¿Necesita mi aplicación completa ser híbrida o puedo combinar componentes nativos e híbridos?

Los componentes nativos e híbridos se pueden mezclar dentro de una aplicación. Por ejemplo, el núcleo de una aplicación se puede compilar con componentes de .NET MAUI, mientras que los componentes híbridos proporcionan funcionalidad adicional. Esto permite combinar el rendimiento y las funcionalidades de los componentes nativos con la flexibilidad y la rentabilidad de los componentes híbridos.

¿Cuáles son mis opciones para crear aplicaciones web basadas en .NET que parecen excelentes en exploradores modernos en Windows?

Web apps ofrecen el alcance más amplio de cualquier plataforma de aplicaciones cliente. Entre las opciones para crear hermosas aplicaciones web .NET se incluyen:

  • Las aplicaciones de ASP.NET Core con Razor Pages
  • aplicaciones de ASP.NET Core MVC
  • Aplicaciones ASP.NET Core Blazor, con opciones de modelo de hospedaje.
    • WebAssembly de Blazor
    • Blazor Server

Los modelos de hospedaje de Blazor ahora se pueden configurar en el nivel de componente, lo que permite escenarios como hospedar un componente WebAssembly de Blazor dentro de una aplicación blazor Server.

Consulte la documentación ASP.NET Core para obtener más información.

Elección de un enfoque y comprensión de las inversiones de Microsoft

¡Hay tantas opciones de frameworks para desarrollar aplicaciones para Windows! ¿Cómo decidir?

Windows es una plataforma abierta que admite muchas tecnologías. Estos son algunos criterios que pueden ayudarle a elegir una plataforma:

  • ¿Está creando Windows primero o multiplataforma?
  • ¿Qué lenguajes o aptitudes ya tiene: .NET, JavaScript, otra cosa?
  • ¿Necesita acceso a las API específicas de Windows?
  • ¿Qué funcionalidades del marco se ajustan mejor a los requisitos de la aplicación?
  • Consulte esta tabla para obtener más factores de comparación.

Para muchas aplicaciones empresariales, los equipos suelen elegir en función de las aptitudes existentes y de lo que el equipo es más cómodo usar.

¿Cómo puedo elegir el mejor enfoque de desarrollo para mi aplicación web?

Tenga en cuenta lo siguiente al elegir un enfoque de desarrollo para la aplicación web:

  • Blazor se recomienda para crear aplicaciones web de front-end con .NET. Le permite crear tanto el front-end como el back-end mediante .NET, ahorrar tiempo y costo, y es especialmente bueno para las aplicaciones empresariales.
  • Las aplicaciones web de JavaScript siguen teniendo sentido si desea aprovechar las habilidades existentes de JavaScript o si necesita integrarse con las bibliotecas o marcos de JavaScript establecidos.
  • Las aplicaciones existentes que usan marcos más antiguos, como Web Forms, MVC o Razor Pages, siguen siendo compatibles y se pueden seguir desarrollando y manteniendo.
¿Quién está creando aplicaciones con WinUI hoy?

Muchos clientes están creando con WinUI en la actualidad, incluidos Adobe y Apple:

Microsoft también ha creado muchas aplicaciones WinUI, como Windows 11 Explorador de archivos y la aplicación Fotos.

Who está creando aplicaciones .NET MAUI hoy?

Muchos clientes, incluidos los Microsoft, están creando aplicaciones multiplataforma con .NET MAUI. Por ejemplo, la aplicación móvil Microsoft Azure se compila mediante .NET MAUI.

Consulte más sobre el .NET casos de éxito de clientes.

¿Quién está creando aplicaciones de WPF hoy?

La mayoría de la interfaz de usuario de Microsoft Visual Studio se compila con WPF. El propio IDE Visual Studio es un ejemplo importante de una aplicación de WPF compleja y de alto rendimiento.

¿Quién está creando aplicaciones blazor hoy?

El sistema aéreo FlightPulse de GE Digital usa Blazor para la configuración de back-end de todo lo que ven los pilotos, lo que aporta datos y análisis de sensores directamente a los pilotos para mejorar la seguridad y la eficiencia.

Consulte más Blazor customer stories en el sitio de .NET.

Empaquetado, implementación y actualizaciones

¿Cuál es la diferencia entre las aplicaciones empaquetadas, desempaquetadas y empaquetadas con ubicación externa?

Para obtener definiciones de empaquetadas, desempaquetadas y empaquetadas con aplicaciones de ubicación externa, consulte Introducción a la implementación. En este tema también se explican las ventajas y desventajas de cada opción.

¿Se actualizará automáticamente la aplicación WinUI para los usuarios finales?

Una aplicación WinUI se puede entregar a través de la Tienda, un archivo .appinstaller o a través de un paquete MSI o setup.exe existente. La Tienda y AppInstaller admiten actualizaciones automáticas para los usuarios finales que tienen habilitadas las actualizaciones automáticas, pero las aplicaciones MSI/setup.exe deben proporcionar su propio mecanismo de actualización.

¿Puedo usar SDK de Aplicaciones para Windows sin usar MSBuild?

Por lo general, no. WinUI y el SDK de Aplicaciones para Windows requieren MSBuild, por lo que Visual Studio es un requisito previo para desarrollar con ellos. Aunque técnicamente es posible compilar SDK de Aplicaciones para Windows aplicaciones que no usan WinUI con otras cadenas de herramientas, esto no se admite.

Rendimiento y optimización

¿Qué puedo hacer que mi aplicación de Windows sea excelente para los usuarios finales?

Consulte Windows desarrollo de aplicaciones: Procedimientos recomendados y Windows información general sobre el rendimiento y los aspectos básicos de las aplicaciones.

Compatibility

Drá que mis usuarios tengan que actualizar Windows para usar mi aplicación winUI?

Los usuarios con Windows 10, versión 1809 o posterior, pueden instalar aplicaciones WinUI sin actualizar su sistema operativo.

¿Puedo dirigirme a Arm64 con mi aplicación WinUI?

Sí.

Deprecaciones y migraciones

¿UWP/WinUI para UWP está en desuso?

No. UWP y WinUI para UWP siguen siendo compatibles y siguen recibiendo correcciones de errores, confiabilidad y seguridad. Sin embargo, la mayoría de las nuevas características y funcionalidades se agregan a WinUI.

La compatibilidad con UWP para .NET 9 está disponible. Esta opción proporciona una ruta de modernización para aplicaciones para UWP con la versión más reciente de .NET.

Los objetivos de .NET 9 compatibilidad con UWP son:

  1. Proporcione una mejor ruta de migración para los desarrolladores que quieran moverse a WinUI.
  2. Quite las dependencias de .NET Native para que los desarrolladores puedan beneficiarse de las características más recientes de .NET y C#.

Para obtener más información, consulta la entrada de blog: Modernize tu aplicación para UWP con versión preliminar compatible con UWP para .NET 9 y AOT nativo.

¿Cuándo debo migrar una aplicación UWP o WinUI para UWP a WinUI?

Los desarrolladores de UWP no deben sentirse presionados para migrar si están satisfechos con UWP y su conjunto de características, para muchas aplicaciones, la opción adecuada puede ser permanecer en UWP.

Las aplicaciones que quieran beneficiarse de la plataforma de Windows más reciente y las inversiones de .NET deben considerar la posibilidad de pasar a la SDK de Aplicaciones para Windows. Consulta Migrate de UWP a la SDK de Aplicaciones para Windows.

¿Cuándo *no* debo migrar una aplicación de UWP + WinUI para UWP a WinUI?

Sigue usando UWP si estás compilando para Xbox, Surface Hub o HoloLens.

¿Está WPF en desuso?

No. WPF se admite, se recomienda y sigue recibiendo actualizaciones de características. Consulte la hoja de ruta WPF sobre GitHub.

¿WinForms está en desuso?

No. WinForms se admite y sigue recibiendo actualizaciones de características. Consulte la hoja de ruta Windows Forms sobre GitHub.

¿Está el Windows Runtime (WinRT) en desuso?

No. WinRT es una interfaz binaria de aplicación (ABI) que permite la interoperabilidad entre varios lenguajes. WinRT es la evolución de COM y el SDK de Aplicaciones para Windows proporciona la mayor parte de su funcionalidad a través de las API de WinRT.

Notas de lanzamiento

¿Dónde puedo encontrar notas de versión para SDK de Aplicaciones para Windows?

Las notas de la versión más recientes se pueden encontrar en la página Novedades .