.NET 帮助

Blazor 混合应用(它如何为开发人员工作)

发布 2024年四月29日
分享:

简介

A .NET MAUI Blazor Hybrid 该应用程序将.NET MAUI的跨平台功能与Blazor的网络开发技能/功能相结合,创建可在多个平台上本地运行的应用程序,同时在这些平台之间共享代码和逻辑。这种Blazor混合方法为开发人员提供了灵活性和生产力,并能让更多人使用他们的应用程序。网络开发人员可以使用网络用户界面组件轻松无缝地创建模拟移动设备应用程序。在本文中,我们将使用 Visual Studio 构建一个简单的 .NET MAUI Blazor 混合应用程序,之后还将看到 IronPDF铁软件 生成 PDF 文档。

如何创建.NET MAUI Blazor应用程序从网站生成PDF文件

1.在 Visual Studio 中创建新的 .NET MAUI Blazor 混合项目

2.添加 IronPDF 库以从网站 URL 生成 PDF

3.添加代码,使用 IronPDF 库生成 PDF

什么是 .NET MAUI Blazor 混合应用程序?

.NET MAUI Blazor应用程序是指使用.NET多平台应用程序用户界面构建的应用程序。 (毛伊岛) 和 Blazor 技术。让我们来分析一下这些组件:

.NET MAUI (多平台应用程序用户界面)

.NET MAUI 是一个使用 .NET 技术和 C# 构建跨平台应用程序的框架。开发人员只需编写一次代码,即可将其部署到多个平台,包括 Windows、macOS、iOS 移动应用程序和 Android。.NET MAUI 为跨不同平台开发应用程序提供了单一的项目结构和统一的 API 表面。它支持各种 UI 组件/元素,包括控件、布局和导航模式,以创建现代的响应式应用程序。

Blazor

Blazor 是微软公司推出的一个网络框架,它允许开发人员使用 C# 来构建交互式网络开发应用程序。Blazor 使开发人员能够编写在浏览器客户端和服务器端运行的代码。Blazor 应用程序可使用 Razor 语法开发,该语法将 HTML 标记与 C# 代码相结合,并可利用 .NET 库和框架的强大功能。

混合应用程序

A 混合应用 混合应用程序结合了本地应用程序和网络应用程序的元素。在.NET MAUI 和 Blazor 的语境中,混合应用程序通常是指可在不同平台上本地运行的应用程序 (如 Windows、macOS、iOS 和 Android) 同时利用技术 (如用于用户界面渲染和业务逻辑的 Blazor).这种方法允许开发人员利用他们现有的 .NET 和 C# 技能来构建跨平台应用程序,从而同时利用本地功能和网络技术。

.NET MAUI Blazor 混合应用程序的功能

跨平台支持

您只需创建一次 MAUI Blazor 应用程序,即可将其部署到各种设备上,无需进行重大修改。Blazor 应用程序可作为安卓和苹果设备的本地应用程序使用。

.NET MAUI的设计旨在为在.NET技术中创建跨平台应用程序提供强大的支持,包括Android、iOS、Windows和macOS。这样,开发人员就可以创建可在各种设备上无缝运行的应用程序,而无需进行重大修改。使用.NET MAUI开发的Blazor移动应用程序在安卓和苹果设备上都能像本地应用程序一样运行。

代码和组件共享

.NET MAUI 的主要优势之一是其跨平台共享代码和用户界面组件的功能。这一功能大大减少了开发时间和工作量,消除了为每个平台特定功能重写代码的必要性。通过共享代码和组件,开发人员可以简化开发过程并提高代码的可维护性。

原生用户界面控件

.NET MAUI Blazor混合应用程序利用本地用户界面控件,确保在不同平台上提供一致且熟悉的用户体验。这使得开发人员可以访问特定平台的用户界面元素,同时在所有支持的设备上保持统一的外观和感觉。通过利用本地 UI 控件或 Web UI 组件,开发人员可以创建每个平台都能感受到的应用程序,同时最大限度地提高代码重用率。

与 Visual Studio 集成

Visual Studio为.NET MAUI开发提供了全面的工具支持,为开发人员构建、调试和管理应用程序提供了丰富的功能。借助 Visual Studio,开发人员可以利用 IntelliSense、调试功能和项目管理功能等熟悉的工具,提高整个开发生命周期的生产力和效率。

提高性能

与其他一些跨平台解决方案相比,.NET MAUI Blazor 混合应用程序可提供更高的性能。Blazor与.NET MAUI的集成确保了代码的高效执行,从而产生了反应灵敏、性能卓越的应用程序。通过利用.NET运行时和本地平台功能,开发人员可以创建跨各种设备提供流畅用户体验的应用程序。

热重载支持

.NET MAUI 支持热重载,允许开发人员在开发过程中即时查看更改,而无需重新编译或重新部署。这一功能加快了开发周期,使开发人员能够快速高效地进行迭代。有了热重载支持,开发人员就可以对应用程序进行实时调整,从而加快开发过程并提高整体生产率。

使用.NET MAUI的Blazor混合应用程序的优势

单一代码库

使用.NET MAUI的Blazor混合应用程序使开发人员只需使用C#和Blazor编写一次应用程序的业务逻辑和用户界面元素。然后,这个单一的代码库就可以部署到多个平台上,而无需针对特定平台进行大量调整,从而降低了开发的复杂性和工作量。

减少开发时间

通过跨平台共享代码和组件,开发人员可以大大减少开发时间。在一个地方所做的更改会反映在所有支持的平台上,从而无需为每个平台编写和维护单独的代码库。这种简化的开发流程缩短了产品上市时间,降低了开发成本。

维护效率

有了适用于所有平台的单一代码库,维护工作就变得更加简单高效。错误修复、更新和增强功能可统一应用于所有支持的平台,确保整个应用程序的一致性和可靠性。这简化了维护流程,降低了在不同版本的应用程序中引入不一致或错误的风险。

访问本地应用程序接口

尽管Blazor Hybrid Apps基于网络技术,但其.NET MAUI保留了在需要时访问本地API的功能。这样,开发人员就可以在其应用程序中无缝利用特定平台的特性和功能,在基于网络的框架功能和每个平台的本地功能之间架起一座桥梁。通过将Blazor的强大功能与访问本地API相结合,开发人员可以创建功能丰富、用途广泛的应用程序,以满足每个平台的独特需求。

总之,.NET MAUI Blazor 混合应用程序提供了网络和本地功能的无缝融合,使其高效、易于维护并适合跨平台开发。

IronPDF 简介

IronPDF铁软件 是.NET世界中生成、修改和读取PDF文档的多功能库。 IronPDF是一个通用的跨平台库,允许开发人员创建、编辑和签署各种来源的PDF文档。无论您使用的是HTML、图像还是其他文档格式,IronPDF都能为您提供一套全面的PDF处理功能。以下是有关 IronPDF 的一些要点:

  1. HTML 转换为 PDF

    IronPDF 可以将 HTML 内容 (包括 CSS、图像和 JavaScript) 转化为 PDF 文档。您可以渲染网页、Razor 视图和 PDF 文档。 (Blazor 服务器), CSHTML (模型-视图-控制器 (MVC)), ASPX (网络表格)和 XAML (毛伊岛) PDF 格式。

  2. 像素完美渲染

    IronPDF 可确保准确渲染,保持内容的视觉保真度。它支持 UTF-8 字符编码、基本 URL、资产编码和 TLS 网站登录。

  3. 页面模板和设置

    通过添加页眉、页脚、页码和分页符自定义 PDF 文件。设置响应式布局、自定义纸张大小、方向和颜色选项。

  4. 编辑和注释

    编辑 PDF 元数据、签署文档和应用数字签名。合并、分割、添加、复制和删除 PDF 中的页面。添加注释和表格字段。

  5. 跨平台支持

    IronPDF 可在各种平台上运行: .NET Core (8、7、6、5 和 3.1+), .NET 标准 (2.0+), .NET Framework (4.6.2+). 兼容 Windows、Linux 和 macOS。

第 1 步:在 Visual Studio 中创建新的 .NET MAUI Blazor 混合项目

如下所示,在 Visual Studio 中选择创建新项目,然后选择 .NET MAUI Blazor Hybrid App 项目模板。

Blazor 混合应用程序(开发人员如何使用):图 1 - .NET MAUI Blazor 混合应用程序模板

提供项目名称和地点详情。

Blazor 混合应用程序(开发人员如何使用):图 2 - 项目配置

选择所需的 .NET 版本。单击创建。

Blazor 混合应用程序(如何为开发人员工作):图 3 - 目标框架

第 2 步:添加 IronPDF 库,从网站 URL 生成 PDF

可以使用 Visual Studio 软件包管理器安装 IronPDF 库,如下所示。

Blazor 混合应用程序(如何为开发人员工作):图 4 - IronPDF

此外,它还可以从 NuGet Gallery 安装。

Blazor 混合应用程序(如何为开发人员工作):图 5 - 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#

第 3 步:添加代码,使用 IronPDF 生成 PDF

在主页上添加以下代码,以修改现有的自动生成代码,从而接收用户输入的 URL 并生成 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#

代码解释

在这里,我们使用文本输入接收用户的输入。他们有一个触发 PDF 生成的按钮。HtmlToPdf.StaticRenderUrlAsPdf 静态方法用于生成 PDF 文档。

运行应用程序时,我们可以看到下面的用户界面。

Blazor 混合应用程序(如何为开发人员工作):图 6 - PDF 生成器用户界面

输出

Blazor 混合应用程序(如何为开发人员工作):图 7 - PDF 输出

许可 (免费试用优惠)

IronPDF 需要有效的许可证密钥,请将其放入 appsettings.json 文件,如下所示:

"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#

免费试用许可证密钥可通过使用 IronPDF 的 试用许可证页面.

结论

构建.NET MAUI Blazor Hybrid 应用程序为希望利用 .NET MAUI 和 Blazor 技术的综合优势创建跨平台应用程序的开发人员提供了一个极具吸引力的解决方案。凭借强大的跨平台支持、无缝代码和组件共享、本地用户界面控件访问、与Visual Studio的集成以及更强的性能,.NET MAUI Blazor Hybrid应用程序为开发人员提供了所需的工具和功能,以构建可在各种设备上本地运行的现代化、反应灵敏且功能丰富的应用程序。

另一方面,IronPDF 是一种量身定制的解决方案,可跨多个平台生成 PDF 文档,如 .NET MAUI Blazor Hybrid 应用程序。

总之,通过构建 .NET MAUI Blazor 混合应用程序和 IronPDF,开发人员可以交付高质量的应用程序,在不同平台上提供一致的用户体验,同时还能受益于 .NET 和 Blazor 生态系统的生产力和灵活性。

< 前一页
如何使用ASP.NET生成PDF报告
下一步 >
C#替换字符串中的字符(开发人员工作原理)

准备开始了吗? 版本: 2024.10 刚刚发布

免费NuGet下载 总下载量: 11,108,738 查看许可证 >