Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se explica cómo trabajar con el enlace de entrada de núcleo virtual de Azure Cosmos DB para MongoDB en Azure Functions.
El enlace de entrada de Azure Cosmos DB para MongoDB (núcleo virtual) le permite recuperar uno o varios elementos como documentos de la base de datos.
Importante
La extensión Azure Cosmos DB para MongoDB (núcleo virtual) está actualmente en versión preliminar.
En este momento, solo se admiten las aplicaciones de .NET que usan el modelo en proceso .
Ejemplo
En este ejemplo se muestra una función de desencadenador de temporizador que usa un enlace de entrada para ejecutar una consulta periódica en la base de datos:
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());
}
}
}
}
Los ejemplos hacen referencia a un tipo de TestClass
simple:
namespace Sample
{
public class TestClass
{
public string id { get; set; }
public string SomeData { get; set; }
}
}
Atributos
En esta tabla se describen las propiedades de configuración de enlace del CosmosDBMongoTrigger
atributo .
Parámetro | Descripción |
---|---|
FunctionId | (Opcional) Identificador de la función de desencadenador. |
DatabaseName | Nombre de la base de datos supervisada por el desencadenador para ver los cambios. |
CollectionName | Nombre de la colección en la base de datos que supervisa el desencadenador para ver los cambios. |
ConnectionStringSetting | Nombre de una configuración de aplicación o colección de configuraciones que especifica cómo conectarse a la cuenta de Azure Cosmos DB que se va a supervisar. |
QueryString | Define la expresión de consulta de Mongo usada por el enlace de entrada devuelve documentos de la base de datos. La consulta admite parámetros de enlace. |
Uso
Puede usar el CosmosDBMongo
atributo para obtener y trabajar directamente con el cliente de MongoDB en el código de función:
[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());
}
}