【问题标题】:Uploading File to Azure Blob Storage results in size 0将文件上传到 Azure Blob 存储导致大小为 0
【发布时间】:2021-07-31 10:26:32
【问题描述】:

能够成功创建容器并上传已创建容器中的任何文件。下载文件(任何上传的文件)后出现问题,它们始终为零。这是我在 NET.Core 应用程序中使用 C# 的代码。

            // Get a reference to a blob
        BlobContainerClient container = new BlobContainerClient(connectionString: connectionString, blobContainerName: "test-container");
        await container.CreateIfNotExistsAsync();

        try
        {
            // Get a reference to a blob
            BlobClient blob = container.GetBlobClient(uploadFiles.First().FileName);

            string filePath = Path.GetFullPath(uploadFiles.First().FileName);

            // Upload file data
            await blob.UploadAsync(filePath, true);

        }
        catch (Exception e)
        {
            _ = e;
        }

enter image description here

附上Auzure门户存储账户内的图片,大小为零?!

我正在关注 Microsoft 的文档,他们在上传文件时也没有明确设置任何大小。

【问题讨论】:

  • 是否引发异常?
  • 我检查过没有异常。文件上传时没有例外,除非它们出现在 Blob 存储中,我看到使用界面为 0 大小。当我尝试使用 Azure 界面下载时,它们会下载,但是当我打开我的电脑时,它们无法打开,因为它们的大小为零。
  • 上传的本地文件是否完好,看来我这边没有问题。
  • 您可以正常上传文件吗?提供的代码?你做了哪些修改?
  • 完全使用您提供的代码。目前有两种猜测,一种是你上传的本地文件损坏,另一种是异步方法没有执行完。

标签: c# .net-core azure-blob-storage


【解决方案1】:

以下代码可以工作:

using FileStream uploadFileStream = File.OpenRead(filePath); 
await blob.UploadAsync(uploadFileStream, true); 
uploadFileStream.Close();

【讨论】:

    猜你喜欢
    • 2016-11-26
    • 1970-01-01
    • 2016-08-18
    • 2018-11-17
    • 2015-06-16
    • 2017-01-24
    • 2017-08-19
    • 2019-07-10
    • 1970-01-01
    相关资源
    最近更新 更多