привязка к входному BLOB-объекту обязательно - PullRequest
1 голос

Как мы обязательно привязываемся к входному BLOB-объекту?

Я бы хотел иметь возможность читать BLOB-объекты внутри моей функции лазури.Один из способов сделать это - добавить такой параметр, как этот:

[Blob("%MyInputBlob%/{FileName}", FileAccess.Read)]  Stream input

Однако это не сработает для меня, потому что мне нужно будет читать несколько больших двоичных объектов, и они имеют разные {filenames}.

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

        var attributes = new Attribute[]
        {
                new BlobAttribute(path),
                new StorageAccountAttribute(connection)
        };
        using (var writer = await binder.BindAsync<TextWriter>(attributes))
        {
            writer.Write(payload);
        }

Есть ли аналогичная возможность привязки для BLP-объектов INPUT?

Ответы [ 2 ]

1 голос
/ 05 июня 2019

Если я вас правильно понимаю - вы можете получить ссылку на контейнер BLOB-объектов без указания имени файла:

[Blob("ContainerName", Connection = "StorageConnectionString")] CloudBlobContainer container

Затем отсюда - прочитайте файл:

container.GetBlockBlobReference("filename");
1 голос
/ 29 мая 2019

Для динамической привязки ввода вы можете просто изменить тип привязки следующим образом:

var blobString = await binder.BindAsync<string>(attributes);

Вот аналогичная проблема , на которую вы могли бы сослаться.

...