【发布时间】:2019-03-04 19:16:01
【问题描述】:
我正在尝试将图像上传到 azure blob 存储。但是,当我在 azure 上查看最终结果时,它只会创建一个空文件。
[HttpPost("Import")]
public IActionResult Import(IFormFile filepond)
{
const string accountName = "accountName";
const string key = "key14881851";
var storageAccount = new CloudStorageAccount(new StorageCredentials(accountName, key), true);
var blobClient = storageAccount.CreateCloudBlobClient();
var container = blobClient.GetContainerReference("mycontainer");
container.CreateIfNotExistsAsync();
container.SetPermissionsAsync(new BlobContainerPermissions()
{
PublicAccess = BlobContainerPublicAccessType.Blob
});
var blob = container.GetAppendBlobReference("test.jpg");
blob.UploadFromStreamAsync(filepond.OpenReadStream());
return Ok();
}
一些问题(除了为什么我得到一个空文件)。
- 我看到很多这些方法都是异步的,我是否需要等待它们才能正常工作(即如果容器不存在,则在将文件写入容器之前创建它)
- 是否需要将 UploadFromStreamAsync 包装在 using 语句中。
【问题讨论】:
标签: c# azure asp.net-core