Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel wordt uitgelegd hoe u werkt met de Invoerbinding voor Azure Cosmos DB voor MongoDB vCore in Azure Functions.
Met de invoerbinding van Azure Cosmos DB voor MongoDB (vCore) kunt u een of meer items ophalen als documenten uit de database.
Belangrijk
De Azure Cosmos DB for MongoDB-extensie (vCore) is momenteel beschikbaar als preview-versie.
Op dit moment worden alleen .NET-apps die gebruikmaken van het verouderde procesmodel ondersteund.
Voorbeeld
In dit voorbeeld ziet u een timertriggerfunctie die gebruikmaakt van een invoerbinding om een periodieke query uit te voeren op de database:
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.AzureCosmosDb.Mongo;
using Microsoft.Extensions.Logging;
using MongoDB.Bson;
using MongoDB.Driver;
namespace Sample
{
public static class Sample
{
[FunctionName("InputBindingSample")]
public static async Task InputBindingRun(
[TimerTrigger("*/5 * * * * *")] TimerInfo myTimer,
[CosmosDBMongo("%vCoreDatabaseTrigger%", "%vCoreCollectionTrigger%", ConnectionStringSetting = "vCoreConnectionStringTrigger",
QueryString = "%queryString%")] List<BsonDocument> docs,
ILogger log)
{
log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");
foreach (var doc in docs)
{
log.LogInformation(doc.ToString());
}
}
}
}
De voorbeelden verwijzen naar een eenvoudig TestClass type:
namespace Sample
{
public class TestClass
{
public string id { get; set; }
public string SomeData { get; set; }
}
}
Kenmerken
In deze tabel worden de bindingsconfiguratie-eigenschappen van het CosmosDBMongoTrigger kenmerk beschreven.
| Kenmerk | Beschrijving |
|---|---|
| FunctionId | (Optioneel) De id van de triggerfunctie. |
| DatabaseName | De naam van de database die wordt bewaakt door de trigger voor wijzigingen. |
| CollectionName | De naam van de verzameling in de database die wordt bewaakt door de trigger voor wijzigingen. |
| ConnectionStringSetting | De naam van een app-instelling of verzameling die aangeeft hoe verbinding moet worden gemaakt met het Azure Cosmos DB-account dat wordt bewaakt. |
| QueryString- | Hiermee definieert u de Mongo-query-expressie die wordt gebruikt door de invoerbinding documenten uit de database retourneren. De query ondersteunt bindingsparameters. |
Gebruik
U kunt het CosmosDBMongo kenmerk gebruiken om rechtstreeks met de MongoDB-client in uw functiecode te verkrijgen en te werken:
[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());
}
}