Параметр маршрута функции Azure имеет значение null - PullRequest
0 голосов
/ 12 сентября 2018

У меня есть функция лазури, например:

    [FunctionName("MaterialsByMaterialNumber")]
    public static async Task<IActionResult> Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = "MaterialsByMaterialNumber/{warehouseId}/{materialNumber:int}")]
        string warehouseId, int materialNumber, HttpRequest req, ILogger log, [Inject(typeof(IQueryService))]QueryService queryService)
    {
        log.LogInformation("MaterialsByRollId function is processing a request");
        IEnumerable<BarcodedMaterial> result = await queryService.GetMaterialsByMaterialNumberAsync(materialNumber, warehouseId);
        return result != null ?
            (ActionResult)new OkObjectResult(result) :
            new BadRequestObjectResult("Something went wrong with this request");
    }

Локально, я запрашиваю функцию с URL: http://localhost:7071/api/MaterialsByMaterialNumber/4072B201-C0A1-4955-815E-7D13953C8C0C/9300

При просмотре в отладчике мой warehouseId всегда равен нулю, в то время как мой материалNumber всегда заполнен.Кто-нибудь знает, что с этим?

Ответы [ 2 ]

0 голосов
/ 12 сентября 2018

Я думаю, что вы упустили одну вещь: вы добавили атрибут в строку warehouseId вместо запроса HttpRequest.

0 голосов
/ 12 сентября 2018

Я проверяю обе функции Azure v1 и v2 с помощью следующего кода, он корректно работает на моей стороне. Для получения дополнительной информации о добавлении параметров в маршруты функций мы могли бы обратиться к этому учебнику .

public static HttpResponseMessage Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = "test/{warehouseId}/{materialNumber:int}")]HttpRequestMessage req, string warehouseId, int materialNumber, TraceWriter log)
{
   log.Info("C# HTTP trigger function processed a request.");

   return req.CreateResponse(HttpStatusCode.OK, $"warehouseId:{warehouseId},materialNumber:{materialNumber}");
}

Я рекомендую вам создать новую функцию Azure только с параметрами, которые я упомянул, а затем добавить свои настраиваемые параметры в функцию Azure по одному для ее отладки.

Результат теста:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...