2016-11-14 7 views
0

quickstart guideから基本的なAzure関数を作成しました。チュートリアルに従って、このデフォルト関数は即座に動作するはずですが、エラーが発生します。Azure関数:パラメータ '_return'をHttpResponseMessageにバインドできません。

機能本体:

using System.Net; 

public static async Task<HttpResponseMessage> Run(HttpRequestMessage req, TraceWriter log) 
{ 
    log.Info("C# HTTP trigger function processed a request."); 

    // parse query parameter 
    string name = req.GetQueryNameValuePairs() 
     .FirstOrDefault(q => string.Compare(q.Key, "name", true) == 0) 
     .Value; 

    // Get request body 
    dynamic data = await req.Content.ReadAsAsync<object>(); 

    // Set name to query string or body data 
    name = name ?? data?.name; 

    return name == null 
     ? req.CreateResponse(HttpStatusCode.BadRequest, "Please pass a name on the query string or in the request body") 
     : req.CreateResponse(HttpStatusCode.OK, "Hello " + name); 
} 

エラーメッセージ:

Function ($HttpTriggerCSharp1) Error: Microsoft.Azure.WebJobs.Host: Error indexing method 'Functions.HttpTriggerCSharp1'. Microsoft.Azure.WebJobs.Host: Cannot bind parameter '_return' to type HttpResponseMessage&. Make sure the parameter Type is supported by the binding. If you're using binding extensions (e.g. ServiceBus, Timers, etc.) make sure you've called the registration method for the extension(s) in your startup code (e.g. config.UseServiceBus(), config.UseTimers(), etc.).

答えて

4

あなたは$returnからresに結合し、あなたの応答出力の名前を変更することで、今のところ、この問題を解決することができます。前者は次回のリリースですぐに動作しますが、まだ動作しません。関数テンプレートの更新が少し早すぎるようです。その問題のレポにはhereというバグがありました。ありがとう:)

+0

感謝のように働く、ありがとう! –

関連する問題