我正在尝试将云文件从一个目录复制到另一个目录,在同一个文件共享帐户中但面临问题。
代码:
以下是我正在使用的代码,文章(https://docs.microsoft.com/en-us/azure/storage/files/storage-dotnet-how-to-use-files#copy-files)
public bool ArchiveTheFile(string filename)
{
bool fileCopied = false;
try
{
var fileshare = ResolveCloudFileShare();
if (fileshare.Exists())
{
CloudFileDirectory rootDir = fileshare.GetRootDirectoryReference();
CloudFileDirectory dirSource = rootDir.GetDirectoryReference(ConfigurationManager.AppSettings["Azure.Storage.FileShare.Source"]);
CloudFileDirectory dirArchive = rootDir.GetDirectoryReference(ConfigurationManager.AppSettings["Azure.Storage.FileShare.Destination"]);
// Ensure that the directory exists.
if (dirSource.Exists())
{
// Get a reference to the file we created previously.
CloudFile sourceFile = dirSource.GetFileReference(filename);
// Ensure that the file exists.
if (sourceFile.Exists())
{
// Ensure that the directory exists.
if (dirArchive.Exists())
{
// Get a reference to the destination file.
CloudFile destFile = dirArchive.GetFileReference(filename);
destFile.StartCopy(sourceFile);fileCopied =true;
}
}
}
}
}
catch (Exception ex)
{
}
return fileCopied ;
}
以下是错误:
无法使用 CloudFile 类的 StartCopy()方法
1。错误的屏幕截图:
GetFileReference()返回的对象没有StartCopy()方法:
2。错误消息:
' CloudFile'不包含' StartCopy'的定义没有扩展方法' StartCopy'接受类型' CloudFile'的第一个参数。可以找到(你错过了使用指令或汇编引用吗?
请注意: 我已经在下面使用了两个汇编参考:
使用Microsoft.WindowsAzure.Storage;
使用Microsoft.WindowsAzure.Storage.File;
答案 0 :(得分:2)
将您的Microsoft.WindowsAzure.Storage
软件包更新到最新版本或至少5.0.2。版本5.0.2之前不支持StartCopy
的{{1}}。