.NET Aspire 预览版 4:新增数据库管理工具、Podman 及更多云 API 支持

.NET Aspire 第四预览版发布总结

本月,微软发布了 .NET Aspire 第四预览版,该版本在多个方面进行了改进,重点关注了社区的需求。主要改进包括对 Entity Framework 组件的增强、Podman 支持、更多云 API 支持以及应用程序模型的调整,以便更轻松地管理资源。

数据库与 Entity Framework 的改进

第四预览版引入了新的 API 和对 数据库与 Entity Framework 的多项改进。其中包括为 MySQL 和 MongoDB 数据库新增的管理工具 phpMyAdmin 和 mongo-express。此外,还引入了新的方法来配置 Entity Framework,解决了不同生命周期范围和自定义服务类型等高级场景。

Entity Framework 迁移过程的改进

在 .NET Aspire 应用程序中,Entity Framework 的迁移过程得到了改进。此前,EF Core 工具由于缺少数据库连接字符串而会报错。在第四预览版中,.NET Aspire 能够检测 EF Core 工具的启动,并禁用连接字符串验证,确保迁移成功创建。

Podman 支持

Podman 是一种无需守护进程的容器引擎,现在在 .NET Aspire 第四预览版中得到了支持,允许用户在 Linux 系统上开发、管理和运行 OCI 容器。团队表示,Podman 是 Docker 的一个很好的替代品,特别适合希望在无需守护进程的情况下运行容器的 Linux 用户。Docker 或 Podman 会自动检测,如果两者都存在,则优先使用 Docker。可以通过环境变量 DOTNET_ASPIRE_CONTAINER_RUNTIME=podman 显式启用或强制使用 Podman。

仪表板的改进

.NET Aspire 仪表板在第四预览版中进行了多项改进,提升了可用性和可访问性。仪表板现在可以作为独立的容器镜像运行,便于远程应用程序管理。此外,仪表板还集成了一些键盘导航快捷键,以增强用户体验。

官方文档指出,仪表板更新了新的外观和感觉,旨在减少导航选项卡占用的空间,并使得在日志、指标和跟踪之间导航更加容易。

Azure 资源的改进

此版本中,.NET Aspire 对 Azure 资源进行了显著改进,新增了用于建模各种 Azure 服务的 Bicep 资源。这些改进封装在 Aspire.Hosting.Azure NuGet 包 中,旨在简化 Azure 资源建模。此外,还引入了新组件,如 Azure SignalRAzure AI Search

容器与 Azure 资源映射

该版本引入了容器化服务与完全托管的 Azure 等效服务之间的映射,支持从开发到部署的过渡。Redis、Postgres 和 SQL Server 现在都有对应的 Azure 服务,未来计划支持更多服务,如 MySql、MongoDB 和 Kafka。

以下代码片段展示了如何使用 Redis 与 builder 对象:

var builder = DistributedApplication.CreateBuilder(args);

var redis = builder.AddRedis("redis")
                   .PublishAsAzureRedis();

builder.AddProject<Projects.WebApplication1>("api")
       .WithReference(redis);

builder.Build().Run();

Azure Bicep 模块的增强

引入了一个新的原语来建模 Azure Bicep 模块,增强了框架在资源建模方面的灵活性。这一改进简化了 Azure 资源的表示,允许将 Bicep 文件作为字面字符串、嵌入资源或磁盘上的文件使用。

模拟器支持的改进

第四预览版还对模拟器支持进行了一些更改,使 API 更符合惯用法。

未来的发布计划

.NET Aspire 团队 承诺每月发布一个新的预览版,并计划在 2024 年第二季度发布稳定的 8.0 版本。微软表示,这些月度发布将为开发者提供定期更新,在整个开发过程中集成新功能和改进。

阅读 114
0 条评论