Azure Cosmos DB resource types for .NET Aspire.
Deprecated Package Version
Reason: Other, Legacy
This version is out of support and is no longer maintained. Please upgrade to the latest version. See our support policy for details: https://aka.ms/dotent/aspire/support
Install
| Product | Versions |
|---|---|
| .NET |
README
Aspire.Hosting.Azure.Cosmos library
Provides extension methods and resource definitions for a .NET Aspire AppHost to configure Azure CosmosDB.
Getting started
Prerequisites
- Azure subscription - create one for free
- Azure Cosmos DB account - create a Cosmos DB account
Install the package
In your AppHost project, install the .NET Aspire Azure Cosmos DB Hosting library with NuGet:
dotnet add package Aspire.Hosting.Azure.Cosmos
Usage example
Then, in the Program.cs file of AppHost, add a Cosmos DB connection and consume the connection using the following methods:
var cosmosdb = builder.AddAzureCosmosDB("cdb").AddDatabase("cosmosdb");
var myService = builder.AddProject<Projects.MyService>()
.WithReference(cosmosdb);
The AddAzureCosmosDB method will read connection information from the AppHost's configuration (for example, from "user secrets") under the ConnectionStrings:cosmosdb config key. The WithReference method passes that connection information into a connection string named cosmosdb in the MyService project. In the Program.cs file of MyService, the connection can be consumed using the client library Aspire.Microsoft.Azure.Cosmos:
builder.AddAzureCosmosDBClient("cosmosdb");
Emulator usage
Aspire supports the usage of the Azure Cosmos DB emulator to use the emulator, add the following to your AppHost project:
// AppHost
var cosmosdb = builder.AddAzureCosmosDB("cosmos").RunAsEmulator();
When the AppHost starts up a local container running the Azure CosmosDB will also be started:
// Service code
builder.AddAzureCosmosDbClient("cosmos");
Additional documentation
- https://learn.microsoft.com/azure/cosmos-db/nosql/sdk-dotnet-v3
- https://github.com/dotnet/aspire/tree/main/src/Components/README.md
Feedback & contributing
Adoption Assessment
A verified publisher signal is available. Assess fit from the package's supported frameworks, license and dependency graph rather than popularity alone.
Related Guides & Workflows
Learn how to evaluate, integrate, or audit this package in your .NET project.