Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
Servicios de aplicaciones

Call a Function - .NET SDK

Los ejemplos de esta sección demuestran cómo llamar a un Función de reino nombrada sum que toma dos argumentos, los suma y devuelve el resultado:

// sum: adds two numbers
exports = function(a, b) {
return a + b;
};

Nota

Authenticate First

Llamas a Functions en un objeto Usuario, así que antes de llamar a cualquier función, debes autenticar a un usuario.

Importante

Asegúrese de desinfectar los datos del cliente para protegerlos contra la inyección de código al usar funciones.

Para ejecutar una función desde el SDK .NET, utilice el método Functions.CallAsync() en el User objeto, pasando el nombre de la función como primer parámetro y los argumentos como los parámetros restantes:

var bsonValue = await
user.Functions.CallAsync("sum", 2, 40);
// The result must now be cast to Int32:
var sum = bsonValue.ToInt32();
// Or use the generic overloads to avoid casting the BsonValue:
sum = await
user.Functions.CallAsync<int>("sum", 2, 40);

Nota

The CallAsync() method returns a single BsonValue object, which you can deserialize after calling the function or by using the the generic overload. Both of these approaches to deserialization are shown in the code above.

Un objeto BsonValue puede contener un único valor primitivo (como se muestra en el ejemplo anterior) o un documento BSON completo. Si tiene una clase que asigna el objeto devuelto, puede deserializarlo a esa clase mediante la sobrecarga genérica. Por ejemplo, el siguiente código llama a una función que devuelve un objeto de una colección de "RealmTasks". Como conocemos la forma del objeto devuelto, podemos deserializar BsonValue a una clase que hayamos creado y, de esta manera, acceder a las propiedades y métodos de ese objeto:

var item = await user.Functions.CallAsync<MyClass>
("getItem", "5f7f7638024a99f41a3c8de4");
var name = item.Name;

Volver

Connect to an App Services App

En esta página