Azure Обновление хранилища BLOB-объектов - PullRequest
0 голосов
/ 19 февраля 2020

Я пытаюсь прочитать содержимое из Azure BlockBlob, применить какое-то преобразование и записать содержимое обратно в тот же самый BLOB-объект в функции Azure.

Ниже приведен код для обратной записи содержимого. Это бежит успех. Однако, когда я проверяю содержимое в последнем блобе, оно содержит только часть данных. например, в контенте должно быть 28 строк данных, но контент содержит только 26 с половиной строк, кажется, что часть контента теряется после вызова «UploadFromStreamAsyn c». Я вижу потерянные примеры в Интернете, но они все о загрузке совершенно новых файлов. Я что-то упускаю в коде при обновлении blob?

    protected async Task WriteItemsToBlog(string blobName, List<T> items)
    {

        var cloudStorageAccount =
            new CloudStorageAccount("MyStorageCredentials", "MyAccountName", null, true);

        var cloudBlobClient =
            cloudStorageAccount.CreateCloudBlobClient();

        var cloudBlobContainer =
            cloudBlobClient.GetContainerReference("MyContainerPath");

        var cloudBlockBlob =
            cloudBlobContainer.GetBlockBlobReference(blobName);

        var ms = new MemoryStream();

        using (var writer = new StreamWriter(ms))
        using (var csv = new CsvWriter(writer, CultureInfo.InvariantCulture))
        {
            csv.WriteRecords(items);                 
            ms.Position = 0;
            cloudBlockBlob.Properties.ContentType = "text/plain";

            await cloudBlockBlob.UploadFromStreamAsync(ms, ms.Length);
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...