Microsoft has released .NET Aspire 9.2, a new version of the company’s cloud-ready stack for building distributed applications that features dashboard enhancements, including a resource graph, and publishers, new tools that help developers write code to package and deploy apps to Docker Compose, Kubernetes, Azure, and eventually other hosts.

Instructions for updating to .NET Aspire 9.2 can be found at devblogs.microsoft.com.

In .NET Aspire 9.2, the resource graph is a new way to visualize resources in apps, displaying a graph of resources linked by relationships. Also in release 9.2 are resource icons, added to the resource pages. The icon color matches a resource’s telemetry in structured logs and traces. A new metric warning in the dashboard, meanwhile, warns when a metric exceeds a configured cardinality limit. Once exceeded, the metric no longer provides accurate information, Microsoft said.

Also to improve the dashboard user experience, the update adds buttons to the Console logs, Structured logs, Traces, and Metrics pages to pause collecting telemetry. This feature allows users to pause telemetry in the dashboard while continuing to interact with an app.

Billed as a minor release despite a host of improvements, .NET Aspire 9.2 supports long-term support releases of .NET 8 and .NET 9. Other improvements in .NET Aspire 9.2:

  • Resources now can define custom URLs. This makes it easier to build custom experiences for resources.
  • Console logs now support UTC timestamps.
  • A search text box has been added to trace details. Developers can filter large traces to find the exact span needed.
  • Custom resource commands now support HTTP-based functionality, through the addition of a WithHttpCommand API. Developers can define endpoints for tasks, such as database migrations or resets.
  • A WithContainerFiles API provides a way to create files and folders inside a container at runtime by defining them in code.
  •  A ConnectionStringResource type makes it easier to build dynamic connection strings without defining a separate resource type.
  • Container resources can now specify an ImagePullPolicy to control when an image is pulled.
  • An AddAzureContainerAppEnvironment resource allows users to define an Azure Container App environment directly in an app model.
  • When deploying to Azure Container Apps with .NET Aspire 9.2, each Azure Container App now gets its own dedicated managed identity by default.