Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 更新Azure Blob上的LastModified_C#_Azure_Azure Storage_Azure Storage Blobs - Fatal编程技术网

C# 更新Azure Blob上的LastModified

C# 更新Azure Blob上的LastModified,c#,azure,azure-storage,azure-storage-blobs,C#,Azure,Azure Storage,Azure Storage Blobs,我正在移植代码,以便在C#中使用Azure的存储SDK 传统上,我会调用此选项来更新文件的上次写入/修改时间: File.SetLastWriteTimeUtc(fileName, lastWriteTimeUtc); 要更新blob的上次修改时间,我尝试执行类似操作,但无法执行,因为LastModified不可访问: CloudBlockBlob blob = container.GetBlockBlobReference(fileName); blob.Properties.LastMod

我正在移植代码,以便在C#中使用Azure的存储SDK

传统上,我会调用此选项来更新文件的上次写入/修改时间:

File.SetLastWriteTimeUtc(fileName, lastWriteTimeUtc);
要更新blob的上次修改时间,我尝试执行类似操作,但无法执行,因为LastModified不可访问:

CloudBlockBlob blob = container.GetBlockBlobReference(fileName);
blob.Properties.LastModified = lastWriteTimeUtc;
blob.SetProperties();
编译器错误:

无法将属性或索引器“Microsoft.WindowsAzure.Storage.Blob.BlobProperties.LastModified”分配给--它是只读的


如何更新LastModified属性?它不会总是更新到当前时间,因此我不能只是重新加载/触摸文件。

您需要的实际上是“触摸”操作。必须重新上载BLOB才能更改
LastModified
属性

编辑


如果您想管理自己的自定义last modified变量,最好的办法可能是在BLOB中存储一个自定义“last modified”字段并自己使用,而不是依赖Azure BLOB提供的本机
LastModified

Azure允许您将元数据添加到容器和BLOB中。 LastModified是一个内部属性,没有必要让外部方更新它-它应该反映其含义

在您的情况下,似乎希望在迁移内容后保留旧值,并且内容可能不允许在其中添加属性。比如说,这是一个图像

在这种情况下,使用元数据添加和读取附加属性。

您可以使用方法更新
LastModified
属性。

谢谢,但我忘记了一条关键信息(更新了问题):代码并不总是将LastModified更新到当前时间,因此重新上传似乎不是一个选项,除非您可以在上传时设置LastModified。您可能可以做的最好的事情是存储一个自定义设置“上次修改“字段并自己使用,而不是依赖Azure Blob提供的本机
LastModified
。如果Blob以某种方式更改,
LastModified
属性将由存储服务自动更改。你不必在那里做任何事情。对于触摸操作,我不建议执行重新上传,因为根据blob的大小,这可能是一个昂贵的操作。我建议操纵blob的元数据或其他属性(如缓存控制、内容编码等)。更多详情,请参见此帖子:。@GauravMantri提出了一个很好的观点。我没有想到要这么做。在blob中添加属性不是一个解决方案。内容可能不允许这样做,在内部跟踪它有点愚蠢。同意Gaurav-元数据将有所帮助。