我有以下代码将图像上传到Azure blob存储。我想在上传到blob之前加密图像数据。我已经有一个加密和解密的辅助类,可以通过调用AESEncryption.Encrypt(“plainText”,“key”,salt“)来使用;
我只想弄清楚tom如何将我的加密方法集成到代码中。另外,我猜测一旦加密而不是调用blob.UploadFromFile(),我将调用blob.UploadFromByteArray()。
public override Task ExecutePostProcessingAsync()
{
try
{
// Upload the files to azure blob storage and remove them from local disk
foreach (var fileData in this.FileData)
{
var filename = BuildFilename(Path.GetExtension(fileData.Headers.ContentDisposition.FileName.Trim('"')));
// Retrieve reference to a blob
var blob = _container.GetBlockBlobReference(filename);
blob.Properties.ContentType = fileData.Headers.ContentType.MediaType;
blob.UploadFromFile(fileData.LocalFileName, FileMode.Open);
File.Delete(fileData.LocalFileName);
Files.Add(new FileDetails
{
ContentType = blob.Properties.ContentType,
Name = blob.Name,
Size = blob.Properties.Length,
Location = blob.Uri.AbsoluteUri
});
}
}
catch (Exception ex)
{
throw ex;
}
return base.ExecutePostProcessingAsync();
}
答案 0 :(得分:1)
在我看来,你可以用3种方式做到:
UploadFromByteArray
方法上传它。UploadFromStream
方法上传。