C#Azure将文件上载到"文件存储服务" - 而不是Blob存储

Dan*_*y G 3 c# azure

我有一个要求上传文件到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)