我有这段代码,用于在 azure 文件存储容器中上传文件。
var originalFileName = GetDeserializedFileName(result.FileData.First());
var uploadedFileInfo = new FileInfo(result.FileData.First().LocalFileName);
var uploadFolder = "/AzureDocuments" + '/' + correctLoanId ;
var patString = HttpContext.Current.Server.MapPath(uploadFolder) + "/" + originalFileName;
if(!Directory.Exists(HttpContext.Current.Server.MapPath(uploadFolder)))
{
Directory.CreateDirectory(HttpContext.Current.Server.MapPath(uploadFolder + '/' + correctLoanId));
}
if (!File.Exists(patString))
{
File.Copy(uploadedFileInfo.FullName, patString);
}
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
CloudConfigurationManager.GetSetting("StorageConnectionString"));
CloudFileClient fileClient = storageAccount.CreateCloudFileClient();
CloudFileShare share = fileClient.GetShareReference("documents");
CloudFileDirectory rootDir = share.GetRootDirectoryReference();
CloudFileDirectory sampleDir = rootDir.GetDirectoryReference(correctLoanId);
sampleDir.CreateIfNotExists();
CloudFile cloudFile = sampleDir.GetFileReference(originalFileName);
try
{
//Open a stream from a local file.
Stream fileStream = File.OpenRead(patString);
cloudFile.UploadFromStreamAsync(fileStream);
fileStream.Dispose();
}
catch (Exception ex)
{
}
该文件已正确上传,并且正确的大小以 azure 显示,但是当我下载文件时,我收到文件已损坏的错误消息。
知道我做错了什么吗?