2017-06-07 3 views
2

Ich bin neu in Azure-Funktionen, und versuche, sie in Verbindung mit Blob Storage zu nutzen.Visual Studio Azure-Funktion Publishing function.json

ich heruntergeladen haben, Visual Studio 2017 Preview, die mir den Zugang zur Schaffung einer Azure Funktion Projektvorlage (https://marketplace.visualstudio.com/items?itemName=AndrewBHall-MSFT.AzureFunctionToolsforVisualStudio2017)

Dann https://blogs.msdn.microsoft.com/webdev/2017/05/10/azure-function-tools-for-visual-studio-2017/ ich in der Lage nach diesem Beispiel gegeben hat, bin eine neue Funktion in VS zu erstellen, veröffentlichen dann zu Azure .

Wenn ich dann auf Azure schaue, kann ich meine neue Funktion sehen, aber es zeigt nur json aus einer function.json Datei.

enter image description here

So funktioniert dies gut, wenn mein Funktionscode nur

public static void Run([BlobTrigger("images/{name}", 
    Connection = "fakename_STORAGE")]Stream myBlob, string name, TraceWriter log) 

jedoch ist, wenn ich mit Ausgängen herumzuspielen will und ich den Code ändern schließen out string myOutputBlob

public static void Run([BlobTrigger("images/{name}", 
    Connection = "fakename_STORAGE")]Stream myBlob, string name, out string myOutputBlob, TraceWriter log) 

Dann Publish zu Azure, sehe ich einen Fehler:

Microsoft.Azure.WebJobs.Host: Cannot bind parameter 'myOutputBlob' to type String&. Make sure the parameter Type is supported by the binding.

ich um dies die function.json Datei auf Azure kaufen Aktualisierung, um zusätzliche Informationen zu bekommen,

enter image description here

aber jedes Mal, wenn ich zu Azure veröffentlichen, wird diese Datei überschrieben.

Ich habe versucht, eine function.json-Datei zu meinem Projekt hinzufügen, die die erforderliche Konfiguration entspricht, aber das funktioniert nicht. Fehle ich etwas?

Wie kann ich sicherstellen, dass die Datei function.json nicht jedes Mal überschrieben wird? Muss ich mein Projekt so konfigurieren, dass ich die Datei verwalten kann?

Antwort

6

Sie haben Ihre Ausgangsparameter mit einem Attribute dekorieren zu konfigurieren, welche Art von Ausgang Bindung benötigen Sie:

public static void Run(
    [BlobTrigger("images/{name}", Connection = "fakename_STORAGE")]Stream myBlob, 
    string name, 
    [Blob("images/copy-{name}", Connection = "fakename_STORAGE")]out string myOutputBlob, 
    TraceWriter log) 

, die die erforderlichen Zeilen in Ihrem function.json während der veröffentlichen hinzufügen.

+0

Funktioniert wie ein Charme. Danke vielmals! –

Verwandte Themen