Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln beskriver hur du arbetar med azure Cosmos DB for MongoDB vCore-utdatabindningen i Azure Functions.
Med utdatabindningen Azure Cosmos DB for MongoDB (vCore) kan du skriva ett nytt dokument till en Azure Cosmos DB for MongoDB-samling (vCore).
Viktigt!
Tillägget Azure Cosmos DB for MongoDB (vCore) är för närvarande i förhandsversion.
För närvarande stöds endast .NET-appar som använder den äldre inprocessmodellen .
Exempel
Det här exemplet visar en Timer-utlösarfunktion som använder CosmosDBMongoCollector för att lägga till ett objekt i databasen:
[FunctionName("OutputBindingSample")]
public static async Task OutputBindingRun(
[TimerTrigger("*/5 * * * * *")] TimerInfo myTimer,
[CosmosDBMongo("%vCoreDatabaseBinding%", "%vCoreCollectionBinding%", ConnectionStringSetting = "vCoreConnectionStringBinding")] IAsyncCollector<TestClass> CosmosDBMongoCollector,
ILogger log)
{
log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");
TestClass item = new TestClass()
{
id = Guid.NewGuid().ToString(),
SomeData = "some random data"
};
await CosmosDBMongoCollector.AddAsync(item);
}
Exemplen refererar till en enkel TestClass typ:
namespace Sample
{
public class TestClass
{
public string id { get; set; }
public string SomeData { get; set; }
}
}
Egenskaper
Den här tabellen beskriver bindningskonfigurationsegenskaperna för attributet CosmosDBMongoTrigger .
| Parameter | Beskrivning |
|---|---|
| FunctionId | (Valfritt) ID:t för utlösarfunktionen. |
| DatabaseName | Namnet på databasen som övervakas av utlösaren för ändringar. |
| CollectionName | Namnet på samlingen i databasen som övervakas av utlösaren för ändringar. |
| ConnectionStringSetting | Namnet på en appinställning eller inställningssamling som anger hur du ansluter till det Azure Cosmos DB-konto som övervakas. |
| CreateIfNotExists | (Valfritt) När värdet är true skapar du måldatabasen och samlingen när de inte redan finns. |
Användning
Du kan använda CosmosDBMongo attributet för att hämta och arbeta direkt med MongoDB-klienten i funktionskoden:
[FunctionName("ClientBindingSample")]
public static void ClientBindingRun(
[TimerTrigger("*/5 * * * * *")] TimerInfo myTimer,
[CosmosDBMongo] IMongoClient client,
ILogger log)
{
var documents = client.GetDatabase("TestDatabase").GetCollection<BsonDocument>("TestCollection").Find(new BsonDocument()).ToList();
foreach (BsonDocument d in documents)
{
log.LogInformation(d.ToString());
}
}