我可以使用以下代码将小文件上传到文件共享,但是大文件没有被传输。有blob.PutBlock
这样的方法可以将文件上传到Blob,但找不到任何文件共享。请您指导一下?
StorageCredentials cred = new StorageCredentials("SASToken");
CloudFileClient fClient = new CloudFileClient(new Uri(FileShareUrl)), cred);
CloudFileShare fshare = fileClient.GetShareReference("FileShareName");
CloudFileDirectory root = share.GetRootDirectoryReference();
CloudFileDirectory dir = root.GetDirectoryReference("Folder/subfolder");
var cloudFile = dir.GetFileReference(fileName);
await cloudFile.UploadFromStreamAsync(incommingBlob).ConfigureAwait(false);
答案 0 :(得分:1)
您应该使用DataMovement library将文件从Blob存储直接复制到目标文件共享,而不是通过Azure函数流式传输大文件。
TransferManager
类具有与copy files from blob to file share相对应的CopyAsync
方法。
这里有some samples可以让您开始使用该库,您只需要将其调整为文件共享而不是blob。