C# 触摸blob并更改其ETag,而无需下载内容并在Windows Azure中上载

C# 触摸blob并更改其ETag,而无需下载内容并在Windows Azure中上载,c#,azure,C#,Azure,问这个问题主要是因为我不能100%确定ETAG是如何计算的 我正在使用最新版本的.net c#library,我想知道如何在不下载文件并再次上传的情况下触摸更新Etag的blob 我假设我可以用SetPropertiesAsync()更改ETag,但我不知道应该在ETag属性中添加什么?您不能以编程方式更改blob的ETag属性。它是一个系统定义的属性,每次更新blob时都会更新它。在不重新加载的情况下更改blob的ETag值的一种方法是更改其属性(如缓存控制等)或更改blob的元数据。我只是通

问这个问题主要是因为我不能100%确定ETAG是如何计算的

我正在使用最新版本的.net c#library,我想知道如何在不下载文件并再次上传的情况下触摸更新Etag的blob


我假设我可以用SetPropertiesAsync()更改ETag,但我不知道应该在ETag属性中添加什么?

您不能以编程方式更改blob的ETag属性。它是一个系统定义的属性,每次更新blob时都会更新它。在不重新加载的情况下更改blob的ETag值的一种方法是更改其属性(如缓存控制等)或更改blob的元数据。我只是通过更改blob的元数据来尝试这一点,当我获取该blob的属性时,我得到了一个新的ETag值。

感谢您为我测试它:)我的解决方案是:public Task Touch(string storePath){var blob=GetBlobReference(storePath);blob.Properties.LastModified=DateTime.UtcNow;return blob.SetPropertiesAsync();}Woops,这也是系统定义的:数据这就是我要写的:)设置属性时,LastModified是否也发生了更改?还是仅当内容更改时?是。更新属性和/或元数据时,上次修改的日期也会更改。