Windows Presentation Foundation (WPF) se publicó como parte de .NET Framework 3.0 en 2006. La característica Aplicación de explorador XAML (XBAP), que permite hospedar y ejecutar aplicaciones WPF en un explorador web, también se introdujo al mismo tiempo que una parte de WPF. En el momento de la publicación de WPF y XBAP en 2006, los navegadores web más populares disponibles eran Internet Explorer 7, Mozilla Firefox 2 y Safari 2. Google Chrome aún no estaba disponible, ya que fue lanzado dos años más tarde en 2008.
XBAP usa la tecnología de implementación ClickOnce en exploradores, que es una tecnología de Microsoft que permite al usuario instalar y ejecutar una aplicación haciendo clic en un vínculo en una página web. Sin embargo, esta tecnología dependía en gran medida de la compatibilidad de NPAPI (Interfaz de programación de aplicaciones del complemento Netscape) en exploradores. NPAPI se ha eliminado gradualmente en los últimos años debido a problemas de seguridad y estabilidad. Los principales exploradores, como Edge, Chrome, Firefox y Safari, han quitado la compatibilidad con complementos NPAPI, lo que significa que las aplicaciones XBAP ya no se pueden ejecutar en estos exploradores.
Compatibilidad con XBAP
¿Cuál es el nivel actual de soporte técnico que Microsoft proporciona para XBAP?
XBAPs se admiten con .NET Framework. WPF para .NET no incluye compatibilidad con XBAP.
¿Hay algún explorador compatible que admita XBAP de forma nativa?
No exactamente, ya no hay ningún explorador compatible diseñado para XBAP. La compatibilidad con Internet Explorer 11 finalizó el 15 de junio de 2022. Algunos exploradores, como Microsoft Edge y Google Chrome, tienen una característica modo Internet Explorer (modo IE) que agrega compatibilidad heredada con Internet Explorer. Estos modos no estaban diseñados para XBAP, por lo que es posible que algunas características de XBAP no funcionen. Para obtener más información, vea ¿Qué es el modo de Internet Explorer (IE).?
Cómo ejecutar mi XBAP?
XBAPs debe implementarse en un servidor web y debe usar un explorador con compatibilidad con el modo Internet Explorer (modo IE). Es posible que tenga que configurar la directiva local para habilitar la aplicación en la zona de seguridad de IE adecuada. Para obtener más información, vea ¿Qué es el modo internet Explorer (IE) y Configurar la compatibilidad con exploradores heredados para Microsoft Edge en modo IE?
Opciones de migración
¿Puedo convertir mi XBAP a una aplicación WPF?
Sí. Puede migrar la aplicación a una aplicación WPF estándar e implementarla a través de un instalador. Todavía puede publicar una aplicación WPF con ClickOnce, pero ClickOnce requiere un explorador con el modo IE habilitado o un complemento que habilita ClickOnce.
Necesito ejecutar en un explorador, ¿cuáles son mis opciones?
ASP.NET Core con Blazor y WebAssembly
Blazor es una aplicación web de pila completa que usa C#. Dependiendo de la organización y compartimentación del código, es posible que tengas que reescribir el front-end de la aplicación en Blazor. Las aplicaciones blazor se pueden implementar mediante WebAssembly, lo que permite que la aplicación se ejecute completamente en el lado cliente en el explorador.
Para obtener más información, consulte ¿Qué es Blazor?
.NET MAUI
Si creaste la aplicación como un XBAP para que pudiera ejecutarse en sistemas operativos que no son Windows, intenta convertir la aplicación a .NET MAUI, que también usa XAML para su interfaz de usuario. .NET MAUI es diferente de WPF, aunque comparten muchos conceptos similares. Para obtener más información, consulte ¿Qué es .NET MAUI?
OpenSilver
El proyecto OpenSilver se creó como alternativa a Silverlight. Silverlight era un subconjunto de WPF que se interrumpió hace mucho tiempo. El proyecto XBAP podría convertirse bien en OpenSilver. Para obtener más información, consulte el sitio web de OpenSilver y el repositorio de GitHub.