同じ共有内のある場所から別の場所にAzureFileStorage内のファイルを移動する方法を理解しようとしています。
例えば。
source -> \\Share1\someFile.txt
destination -> \\Share1\Foo\Bar\someFile.txt
CreateIfNotExistsAsync
する必要がありますか?乾杯!
これは Azure Storage Filesのスタートガイドに記載されています リファレンスです。
必要なのは、ファイルをある場所から別の場所にコピーするためのStartCopy
メソッドです。
// Start the copy operation.
destinationFile.StartCopy(sourceFile);
そして、はい、宛先ディレクトリが存在しない場合は作成する必要があります。
残念ながら、クライアントSDKが依存するREST APIを介して公開される移動/名前変更機能はありません。もちろん、SMBを介してこれらの機能を実行できます。これらの機能はバックログにあります。ただし、実装のタイムラインはまだありません。
このような:
public static void MoveTo(this CloudFile source, CloudFileDirectory directory)
{
var target = directory.GetFileReference(source.Name);
target.StartCopy(source);
source.Delete();
}
Azure Storage File共有は、SMB互換の共有です。したがって、通常のファイルI/O操作でファイルのコピー/移動を行うことができるはずです。これは、直接のblob操作とは対照的です。直接のblob操作では、特にコンテナーを作成したり、StorageAPIを介してblobコピーを開始したりする必要があります。