J'ai une fonction python avec un trigger de servicebus et une liaison d'entrée BLOB. Le nom du blob correspond au contenu du message de la file d'attente. Mon fichier function.json ressemble que:Fonction Azure - C# - ServicebusTrigger avec liaison Blob
{
"bindings": [
{
"type": "serviceBusTrigger",
"name": "inputMessage",
"connection": "Omnibus_Validation_Listen_Servicebus",
"queueName": "validation-input-queue",
"accessRights": "listen",
"direction": "in"
},
{
"type": "blob",
"name": "inputBlob",
"path": "baselines/{inputMessage}",
"connection": "Omnibus_Blob_Storage",
"direction": "in"
}
],
"disabled": false
}
Et cela fonctionne comme un charme.
Je voudrais créer une fonction C# avec les mêmes liaisons, mais cela ne semble pas fonctionner. J'ai utilisé le même fichier function.json
.
Je dispose d'un fichier project.json
:
{
"frameworks": {
"net46": {
"dependencies": {
"WindowsAzure.Storage": "8.5.0"
}
}
}
}
et mon fichier run.csx
ressemble à ça:
public static void Run(string inputMessage, Stream inputBlob, TraceWriter log)
{
log.Info($"C# ServiceBus queue trigger function processed message: {inputMessage}");
}
Quand je sauve/exécuter la fonction, j'ai reçu cette erreur:
Function ($import-baseline) Error: Microsoft.Azure.WebJobs.Host: Error indexing method 'Functions.import-baseline'. Microsoft.Azure.WebJobs.Host: No binding parameter exists for 'inputMessage'.
Y at-il une différence entre le python et C# sdk pour ce genre de liaison?
semble correct. Essayez de supprimer project.json, ce n'est pas nécessaire dans ce cas. – Mikhail
@Mikhail, Ne fonctionne pas :-( – Thomas
Oui ... le problème est avec la syntaxe 'baselines/{inputMessage}' Mais drôle que cela fonctionne en python ... – Mikhail