[英]How to Uploading Base64 / byte[] Image to Azure Blob with ASP.NET Core 6 MVC using C#?
这是我的代码 IFormFile。
public static async Task<string> UploadFileToBlobStorage(IFormFile file)
{
string container = "abccontainer";
string storageAccount_connectionString = "DefaultEndpointsProtocol=https;AccountName=abc/aXQUORlrTMNkxaUFPDDlLEW/mwe5Fihy+zl4p+ysF6Y+9JiMud8khH+AStEDb6DA==;EndpointSuffix=core.windows.net";
BlobContainerClient blobContainerClient = new(storageAccount_connectionString, container);
BlobClient blob = blobContainerClient.GetBlobClient(Path.GetFileName(file.FileName));
var mimeTypes = GetFileContentType(Path.GetFileName(file.FileName));
var header = new BlobHttpHeaders
{
ContentType = mimeTypes
};
await blob.UploadAsync(file.OpenReadStream(), header);
return blob.Uri.AbsoluteUri;
}
但是,我想将 bytes[] 上传到 blob 存储。 敌人,我将只传递 byte[] 数组,它应该上传。
我能怎么做 ?
public static async Task<string> UploadFileToBlobStorage(byte[] array)
{
return blob.Uri.AbsoluteUri;
}
UploadAsync
有一个采用BinaryData
对象的重载。
您应该能够像这样重写您的代码:
BlobClient blob = blobContainerClient.GetBlobClient("somename.txt"); // update as necessary
var header = new BlobHttpHeaders
{
ContentType = "text/plain" // update as necessary
};
byte[] sourceData = getSourceData();
BinaryData uploadData = new BinaryData(sourceData);
await blob.UploadAsync(uploadData, header);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.