Last week, Microsoft revealed the availability of .NET Aspire (third preview). Preview 3 brings changes such as improved UI for dashboards and support for new components such as Azure OpenAI, Kafka, Oracle, MySQL, CosmosDB, and Orleans.
.NET Aspire is a new cloud-native development stack announced by Microsoft and the .NET team during the .NET Conf Event in November.
In the latest update, the .NET Aspire dashboard has been refactored and converted into an independent component. Previously, it was integrated within the host project, but Microsoft says this restructuring is aimed at reducing version conflicts due to project dependencies.
As reported, the dashboard functions as a standalone executable and communicates via gRPC to retrieve information about projects, containers, status, and logs. Its improvements include accessibility enhancements, localization features, new resource details views, and telemetry improvements.
Additionally, the development team has this to say about the .NET Aspire component and its updates:
.NET Aspire components are a suite of curated NuGet packages specifically selected to facilitate the integration of cloud-native applications with popular services and platforms. Each component provides important cloud-native functionality through automatic provisioning or standardized configuration patterns. Although .NET Aspire components can be used without an Orchestrator project, they are designed to work best with .NET Aspire app hosts.
Notable additions include integration of Azure AI OpenAI services. This enables integration of OpenAI services from Azure AI OpenAI or .NET Aspire projects. Preview 3 also now includes Apache Kafka support for message production and consumption.
Additionally, for database realms, Oracle Entity Framework is now supported, allowing connection pooling, health checks, logging, and telemetry, and MySQL Entity Framework is also supported. Starting with Preview 3, developers can also try out his CosmosDB hosting support.
var builder = DistributedApplication.CreateBuilder(args);
var db = builder.AddAzureCosmosDB("cosmos")
.UseEmulator()
.AddDatabase("db");
var app = builder.AddProject<Projects.MyApp("app");
...
builder.AddAzureCosmosDB("db", static settings =>
{
settings.IgnoreEmulatorCertificate = true;
});
Microsoft emphasizes that many of the new component additions in Preview 3 were community work.
Preview 3 also introduces support for Orleans v8.1.0-preview1 and later, allowing users to configure clusters within the app host and specify the resources to use. Currently, Redis, Azure Table, and Blob Storage resources are supported, but future updates will include support for additional resources.
Deployment extensions are also part of the Azure Developer CLI (azd), an open source tool designed specifically for deploying applications in Azure. This release highlights improved support for CosmosDB and AzureSQL within the CLI, further simplifying the process of provisioning and deploying Aspire apps in Azure Container Apps.
Additionally, updates to Dapr, the portable event-driven runtime, include improvements such as eliminating the need to specify the ID of a Dapr sidecar and expanding support for writing all Dapr components within the app model. Masu. Additionally, the Azure Developer CLI now supports deploying .NET Aspire apps to Azure Container Apps using Dapr.
The latest update made some breaking changes to how the service connects. The previous method WithServiceBinding has been replaced by WithEndpoint. This adjustment is intended to provide clearer functionality. Additionally, we have introduced the option to connect via HTTP or HTTPS to increase the flexibility of service connections.
Regarding community feedback, users expressed confusion about support for Orleans in recent online discussions and questioned its inclusion in the framework. David Fowler revealed The latest update aims to strengthen support for Orleans, More top-notch, guided, and easy to implement.. Meanwhile, other users expressed appreciation for the progress and had generally positive reactions to .NET Aspire Preview 3.
Finally, the .NET Aspire team announced its intention to roll out a new preview version every month and complete a stable 8.0 release by the second quarter of 2024. According to Microsoft, these monthly releases are scheduled and designed to provide consistent updates to developers. New features and enhancements will be included along the way.