我知道 Azure Files 仍处于预览阶段,但请耐心等待......我的用户可以将文件上传到 Azure Files 目录,并且每隔一段时间,该文件就会在源文件系统上标记为只读。我们还有一个自动化流程来更新这些文件。当目标文件被标记为只读时,自动化过程将失败并显示 409 冲突消息。
有谁知道如何确定该文件在 Azure 文件中是否为只读文件?
我在下面附上了示例代码。在调用 UploadFromStream 期间发生错误。
private void downloadBlobToAzureFiles( string containerName, string blobName, string destinationFilePath, Guid callID )
{
var container = this.destBlobClient.GetContainerReference( containerName );
var blob = container.GetBlockBlobReference( blobName.ToLower() );
MemoryStream memStream = new MemoryStream();
blob.DownloadToStream( memStream );
memStream.Seek( 0, SeekOrigin.Begin );
//split directory path and filename
var fileInfo = new SplitFilePathInfo( destinationFilePath );
var fileDirectory = this.rootDirectory;
foreach( var dir in fileInfo.Path.Split( '\\' ) )
{
if( string.IsNullOrEmpty( dir ) ) continue;
fileDirectory = fileDirectory.GetDirectoryReference( dir );
fileDirectory.CreateIfNotExists();
}
CloudFile cloudFile = fileDirectory.GetFileReference( fileInfo.FileName );
cloudFile.UploadFromStream( memStream );
}