AYUDA .NET

Blazor Hybrid Apps (Cómo funciona para desarrolladores)

Actualizado 29 de abril, 2024
Compartir:

Introducción

A .NET MAUI Blazor Híbrido combina las capacidades multiplataforma de .NET MAUI con las habilidades/capacidades de desarrollo web de Blazor para crear aplicaciones que pueden ejecutarse de forma nativa en múltiples plataformas mientras se comparte código y lógica entre ellas. Este enfoque híbrido de Blazor ofrece a los desarrolladores flexibilidad, productividad y la posibilidad de llegar a un público más amplio con sus aplicaciones. Un desarrollador web puede crear fácilmente aplicaciones emuladas para dispositivos móviles utilizando componentes de interfaz de usuario web. En este artículo, vamos a construir una simple aplicación .NET MAUI Blazor Hybrid utilizando Visual Studio y también más tarde ver la IronPDF biblioteca de Iron Software para generar documentos PDF.

Cómo crear una aplicación .NET MAUI Blazor para generar PDF desde un sitio web

  1. Crear un nuevo proyecto híbrido .NET MAUI Blazor en Visual Studio
  2. Añadir la biblioteca IronPDF para generar PDF a partir de la URL de un sitio web
  3. Añadir código para generar PDF utilizando la biblioteca IronPDF

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

.NET MAUI Blazor app se refiere a una aplicación construida usando .NET Multi-platform App UI (MAUI) y las tecnologías Blazor. Desglosemos estos componentes:

.NET MAUI (Interfaz de aplicación multiplataforma)

.NET MAUI es un marco para crear aplicaciones multiplataforma con tecnologías .NET y C#. Permite a los desarrolladores escribir código una sola vez y desplegarlo en múltiples plataformas, incluidas Windows, macOS, aplicaciones móviles iOS y Android. .NET MAUI proporciona una estructura de proyecto única y una superficie API unificada para desarrollar aplicaciones en diferentes plataformas. Admite varios componentes/elementos de interfaz de usuario, incluidos controles, diseños y patrones de navegación, para crear aplicaciones modernas y con capacidad de respuesta.

Blazor

Blazor es un marco web de Microsoft que permite a los desarrolladores crear aplicaciones web interactivas utilizando C#. Blazor permite a los desarrolladores escribir código que se ejecuta en el lado del cliente dentro del navegador, así como en el lado del servidor. Las aplicaciones Blazor pueden desarrollarse utilizando la sintaxis Razor, que combina el marcado HTML con el código C#, y pueden aprovechar la potencia de las bibliotecas y marcos .NET.

Aplicación híbrida

A aplicación híbrida combina elementos de aplicaciones nativas y web. En el contexto de .NET MAUI y Blazor, una aplicación híbrida se refiere normalmente a una aplicación que se ejecuta de forma nativa en varias plataformas (como Windows, macOS, iOS y Android) al tiempo que se utilizan tecnologías (como Blazor para la representación de la interfaz de usuario y la lógica empresarial). Este enfoque permite a los desarrolladores aprovechar sus conocimientos de .NET y C# para crear aplicaciones multiplataforma que aprovechen tanto las funciones nativas como las tecnologías web.

Características de .NET MAUI Blazor Hybrid Apps

**Soporte multiplataforma

Puedes crear tu aplicación MAUI Blazor una vez e implementarla en varios dispositivos sin modificaciones significativas. Las aplicaciones Blazor funcionan como aplicaciones nativas tanto para dispositivos Android como Apple.

.NET MAUI está diseñado para proporcionar un sólido soporte para crear aplicaciones multiplataforma en tecnologías .NET, que abarcan Android, iOS, Windows y macOS. Esto permite a los desarrolladores crear aplicaciones que funcionen perfectamente en una amplia gama de dispositivos sin necesidad de modificaciones significativas. Una aplicación móvil Blazor desarrollada con .NET MAUI se comportará como una aplicación nativa tanto en dispositivos Android como Apple.

Compartición de códigos y componentes

Una de las principales ventajas de .NET MAUI es su capacidad para compartir código y componentes de interfaz de usuario en varias plataformas. Esta función reduce significativamente el tiempo y el esfuerzo de desarrollo, ya que elimina la necesidad de reescribir el código para cada función específica de la plataforma. Al compartir código y componentes, los desarrolladores pueden agilizar el proceso de desarrollo y mejorar la capacidad de mantenimiento del código.

**Controles de interfaz de usuario nativos

Las aplicaciones híbridas .NET MAUI Blazor aprovechan los controles de interfaz de usuario nativos, garantizando una experiencia de usuario coherente y familiar en diferentes plataformas. Esto permite a los desarrolladores acceder a elementos de interfaz de usuario específicos de cada plataforma, manteniendo al mismo tiempo un aspecto unificado en todos los dispositivos compatibles. Aprovechando los controles de interfaz de usuario nativos o los componentes de interfaz de usuario web, los desarrolladores pueden crear aplicaciones que parezcan nativas de cada plataforma al tiempo que maximizan la reutilización del código.

**Integración con Visual Studio

Visual Studio ofrece un completo soporte de herramientas para el desarrollo de .NET MAUI, lo que permite a los desarrolladores disponer de un amplio conjunto de funciones para crear, depurar y gestionar sus aplicaciones. Con Visual Studio, los desarrolladores pueden aprovechar herramientas conocidas como IntelliSense, funciones de depuración y de gestión de proyectos, lo que aumenta la productividad y la eficacia durante todo el ciclo de desarrollo.

**Rendimiento mejorado

Las aplicaciones .NET MAUI Blazor Hybrid ofrecen un rendimiento mejorado en comparación con otras soluciones multiplataforma. La integración de Blazor y .NET MAUI garantiza una ejecución eficaz del código, lo que se traduce en aplicaciones con gran capacidad de respuesta y rendimiento. Al aprovechar la potencia del tiempo de ejecución de .NET y las capacidades de la plataforma nativa, los desarrolladores pueden crear aplicaciones que ofrezcan una experiencia de usuario fluida y sin problemas en diversos dispositivos.

Soporte de recarga en caliente

.NET MAUI ofrece compatibilidad con la recarga en caliente, lo que permite a los desarrolladores ver al instante los cambios durante el proceso de desarrollo sin necesidad de volver a compilar o implementar. Esta función acelera el ciclo de desarrollo, permitiendo a los desarrolladores iterar con rapidez y eficacia. Gracias a la compatibilidad con la recarga en caliente, los desarrolladores pueden realizar ajustes en tiempo real en sus aplicaciones, lo que acelera el proceso de desarrollo y mejora la productividad general.

Ventajas de Blazor Hybrid Apps con .NET MAUI

Código único

Blazor Hybrid Apps con .NET MAUI permite a los desarrolladores escribir la lógica empresarial y los elementos de interfaz de usuario de su aplicación una sola vez utilizando C# y Blazor. Esta base de código única puede implantarse en varias plataformas sin necesidad de realizar grandes ajustes específicos, lo que reduce la complejidad y el esfuerzo de desarrollo.

**Tiempo de desarrollo reducido

Al compartir código y componentes entre plataformas, los desarrolladores pueden reducir considerablemente el tiempo dedicado al desarrollo. Los cambios realizados en un lugar se reflejan en todas las plataformas compatibles, lo que elimina la necesidad de escribir y mantener bases de código independientes para cada plataforma. Este proceso de desarrollo agilizado se traduce en plazos de comercialización más cortos y costes de desarrollo reducidos.

Eficiencia de mantenimiento

Con una única base de código para todas las plataformas, el mantenimiento resulta más sencillo y eficaz. Las correcciones de errores, actualizaciones y mejoras pueden aplicarse uniformemente a todas las plataformas compatibles, lo que garantiza la coherencia y fiabilidad de toda la aplicación. Esto simplifica el proceso de mantenimiento y reduce el riesgo de introducir incoherencias o errores en las distintas versiones de la aplicación.

Acceso a API nativas

A pesar de estar basadas en tecnologías web, las aplicaciones híbridas Blazor con .NET MAUI conservan la capacidad de acceder a las API nativas cuando sea necesario. Esto permite a los desarrolladores aprovechar sin problemas las características y funcionalidades específicas de cada plataforma dentro de sus aplicaciones, tendiendo un puente entre las capacidades de los marcos basados en web y las capacidades nativas de cada plataforma. Al combinar la potencia de Blazor con el acceso a las API nativas, los desarrolladores pueden crear aplicaciones versátiles y repletas de funciones que se adaptan a los requisitos exclusivos de cada plataforma.

En resumen, las aplicaciones híbridas .NET MAUI Blazor ofrecen una mezcla perfecta de capacidades web y nativas, lo que las hace eficientes, fáciles de mantener y adecuadas para el desarrollo multiplataforma.

Presentación de IronPDF

IronPDF biblioteca de Iron Software es una biblioteca versátil en el mundo .NET para generar, modificar y leer documentos PDF. IronPDF es una versátil biblioteca multiplataforma que permite a los desarrolladores crear, editar y firmar documentos PDF de diversas fuentes. Tanto si trabaja con HTML, imágenes u otros formatos de documento, IronPDF ofrece un completo conjunto de funciones para manejar PDF. Estos son algunos puntos clave sobre IronPDF:

  1. Conversión de HTML a PDF:

     IronPDF puede convertir contenido HTML (incluyendo CSS, imágenes y JavaScript)  en documentos PDF. Puede renderizar páginas web, vistas Razor (Servidor Blazor)CSHTML (MVC)ASPX (Formularios web)y XAML (MAUI)  como PDF.
  2. Renderizado perfecto:

     IronPDF garantiza una renderización precisa, manteniendo la fidelidad visual de su contenido. Es compatible con la codificación de caracteres UTF-8, las URL base, la codificación de activos y los inicios de sesión en sitios web TLS.
  3. Plantillas de página y configuración:

     Personaliza tus PDF añadiendo encabezados, pies de página, números de página y saltos de página. Establezca diseños adaptables, tamaños de papel personalizados, orientaciones y opciones de color.
  4. Edición y anotaciones:

     Edite metadatos PDF, firme documentos y aplique firmas digitales. Fusione, divida, añada, copie y elimine páginas dentro de archivos PDF. Añadir anotaciones y campos de formulario.
  5. Soporte multiplataforma:

     IronPDF funciona en varias plataformas: **.NET Core (8, 7, 6, 5 y 3.1+.)Estándar .NET (2.0+).NET Framework (4.6.2+)Es compatible con Windows, Linux y macOS.

Paso 1: Crear un nuevo proyecto híbrido .NET MAUI Blazor en Visual Studio

Comienza como se indica a continuación seleccionando Crear Nuevo Proyecto en Visual Studio y selecciona la plantilla de proyecto .NET MAUI Blazor Hybrid App.

Aplicaciones híbridas Blazor (Cómo funciona para desarrolladores): Figura 1 - Plantilla .NET MAUI Blazor Hybrid App

Indique el nombre del proyecto y los detalles de su ubicación.

Aplicaciones híbridas Blazor (Cómo funciona para los desarrolladores): Figura 2 - Configuración del proyecto

Seleccione la versión .NET necesaria. Haga clic en Crear.

Aplicaciones híbridas Blazor (Cómo funciona para los desarrolladores): Figura 3 - Marco de destino

Paso 2: Añadir la librería IronPDF para generar PDF desde la URL del sitio web

La biblioteca IronPDF puede instalarse utilizando un gestor de paquetes de Visual Studio como el que se muestra a continuación.

Aplicaciones híbridas Blazor (Cómo funciona para desarrolladores): Figura 4 - IronPDF

También se puede instalar desde la Galería NuGet.

Aplicaciones híbridas Blazor (Cómo funciona para los desarrolladores): Figura 5 - Galería NuGet

dotnet add package IronPdf --version 2024.4.2
dotnet add package IronPdf --version 2024.4.2
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'dotnet add package IronPdf --version 2024.4.2
VB   C#

Paso 3: Añadir código para generar PDF con IronPDF

Añada el siguiente código a la página de inicio para modificar el código autogenerado existente para tomar la URL introducida por el usuario y generar documentos PDF.

@page "/"
@using IronPdf
<h1>Welcome to PDF Generator from Website URL</h1>
<p>Enter the Website URL to Generate PDF</p>
<p>Click to Generate PDF</p>
<button class="btn btn-primary" @onclick="GeneratePdf">Generate</button>
@code {
    private string? inputValue;
    private string? InputValue { get; set; }
    private void GeneratePdf()
    {
        var r = HtmlToPdf.StaticRenderUrlAsPdf(@InputValue);
        r.SaveAs("C:\\temp\\output.pdf");
    }
}
@page "/"
@using IronPdf
<h1>Welcome to PDF Generator from Website URL</h1>
<p>Enter the Website URL to Generate PDF</p>
<p>Click to Generate PDF</p>
<button class="btn btn-primary" @onclick="GeneratePdf">Generate</button>
@code {
    private string? inputValue;
    private string? InputValue { get; set; }
    private void GeneratePdf()
    {
        var r = HtmlToPdf.StaticRenderUrlAsPdf(@InputValue);
        r.SaveAs("C:\\temp\\output.pdf");
    }
}
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: @page "/" using IronPdf <h1> Welcome to PDF Generator from Website URL</h1> <p> Enter the Website URL to Generate PDF</p> <p> Click to Generate PDF</p> <button class="btn btn-primary" onclick="GeneratePdf"> Generate</button> @code
"btn btn-primary" onclick="GeneratePdf"> Generate</button> code
Private Friend page "/" [using] IronPdf (Of h1) Welcome [to] PDF Generator from Website URL</h1> (Of p) Enter the Website URL [to] Generate PDF</p> (Of p) Click [to] Generate PDF</p> <button Class="btn btn-primary" onclick
'INSTANT VB WARNING: Nullable reference types have no equivalent in VB:
'ORIGINAL LINE: private string? inputValue;
'INSTANT VB NOTE: The field inputValue was renamed since Visual Basic does not allow fields to have the same name as other class members:
	Private inputValue_Conflict As String
'INSTANT VB WARNING: Nullable reference types have no equivalent in VB:
'ORIGINAL LINE: private string? InputValue {get;set;}
	Private Property InputValue() As String
	Private Sub GeneratePdf()
		Dim r = HtmlToPdf.StaticRenderUrlAsPdf(InputValue)
		r.SaveAs("C:\temp\output.pdf")
	End Sub
End Class
VB   C#

Código Explicación

Aquí estamos recibiendo la entrada del usuario utilizando una entrada de texto. Tienen un botón para activar la generación de PDF. HtmlToPdf.StaticRenderUrlAsPdf El método Static se utiliza para generar el documento PDF.

Cuando ejecutamos la aplicación, podemos ver la siguiente interfaz de usuario.

Aplicaciones híbridas Blazor (Cómo funciona para desarrolladores): Figura 6 - Interfaz de usuario del generador de PDF

Salida

Aplicaciones híbridas Blazor (Cómo funciona para desarrolladores): Figura 7 - Salida PDF

Licencias (oferta de prueba gratuita)

Se necesita una clave de licencia válida para IronPDF, colóquela en el archivo appsettings.json de la siguiente manera:

"IronPdf.LicenseKey": "your license key"
"IronPdf.LicenseKey": "your license key"
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'"IronPdf.LicenseKey": "your license key"
VB   C#

Se puede obtener una clave de licencia de prueba gratuita registrándose para obtener una licencia de prueba mediante la página de IronPDF página de licencias de prueba.

Conclusión

La creación de una aplicación .NET MAUI Blazor Hybrid ofrece una solución atractiva para los desarrolladores que buscan crear aplicaciones multiplataforma con los puntos fuertes combinados de las tecnologías .NET MAUI y Blazor. Con una sólida compatibilidad multiplataforma, código y componentes compartidos sin fisuras, acceso a controles de interfaz de usuario nativos, integración con Visual Studio y rendimiento mejorado, las aplicaciones .NET MAUI Blazor Hybrid proporcionan a los desarrolladores las herramientas y capacidades necesarias para crear aplicaciones modernas, con capacidad de respuesta y ricas en funciones que se ejecutan de forma nativa en varios dispositivos.

Por otro lado, IronPDF es una solución hecha a medida para generar documentos PDF a través de múltiples plataformas como aplicaciones .NET MAUI Blazor Hybrid.

En resumen, la creación de una aplicación híbrida .NET MAUI Blazor y IronPDF permite a los desarrolladores ofrecer aplicaciones de alta calidad que ofrecen una experiencia de usuario coherente en diferentes plataformas, al tiempo que se benefician de la productividad y la flexibilidad de los ecosistemas .NET y Blazor.

< ANTERIOR
Cómo generar informes PDF con ASP.NET
SIGUIENTE >
C# Reemplazar Carácter En Cadena (Cómo Funciona Para Desarrolladores)

¿Listo para empezar? Versión: 2024.6 recién publicada

Comenzar prueba gratuita Descargas totales: 9,541,998
Ver licencias >