我有一个要求上传文件到Azure文件存储服务C#,(不是Blob存储),我搜索了很多,但我没有找到如何,只找到如何为Blob存储做的信息,似乎它不支持或者我在寻找坏消息.
我能够到达这里,但是没有UploadFromStream()像blob 这样的方法
FileInfo file = new FileInfo(@"C:\...\file.txt");
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["StorageConnectionString"].ConnectionString);
CloudFileClient fileClient = storageAccount.CreateCloudFileClient();
CloudFileShare share = fileClient.GetShareReference(ConfigurationManager.AppSettings["ShareReference"]);
CloudFileDirectory root = share.GetRootDirectoryReference();
CloudFileDirectory dir = root.GetDirectoryReference("TESTDIR");
using (FileStream fs = file.OpenRead())
{
// what should I do here
}
Run Code Online (Sandbox Code Playgroud)
是否可以像这样上传文件?
在哪种情况下,我错过了什么?
Cam*_*uce 13
您需要首先CloudFile为要从CloudFileDirectory实例创建的文件创建实例.获得参考后,您可以通过多种方式上传,包括CloudFile.UploadFromStream()方法.
FileInfo file = new FileInfo(@"C:\...\file.txt");
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["StorageConnectionString"].ConnectionString);
CloudFileClient fileClient = storageAccount.CreateCloudFileClient();
CloudFileShare share = fileClient.GetShareReference(ConfigurationManager.AppSettings["ShareReference"]);
CloudFileDirectory root = share.GetRootDirectoryReference();
CloudFileDirectory dir = root.GetDirectoryReference("TESTDIR");
var cloudFile = dir.GetFileReference("myfile.txt");
using (FileStream fs = file.OpenRead())
{
cloudFile.UploadFromStream(fs);
}
Run Code Online (Sandbox Code Playgroud)