2013-12-21 9 views
7

Azureは、blobのContentDispositionプロパティを公開しています。http://msdn.microsoft.com/en-us/library/windowsazure/microsoft.windowsazure.storage.blob.blobproperties.contentdisposition(v=azure.10).aspxは、バージョン3.0のapiにあります。私は既存のBLOBにプ​​ロパティを設定しましたが、ダウンロードされたときにはコンテンツの配置ヘッダはレスポンスには含まれません。Azure Storage API ContentDisposition

私は、FetchAttributesを実行したときに、そのBlobのAzureから、実際にContentDispositionプロパティに値が設定されていることを確認しました。

SASを使用しても動作しますが、SASなしでファイルをダウンロードすると動作しません。

洞察力があれば教えてください。

答えて

12

DefaultServiceVersionのストレージアカウントを確認できますか? Content-Dispositionが機能するには、DefaultServiceVersion2013-08-15である必要があります。

DefaultServiceVersion取得:

var cloudStorageAccount = new CloudStorageAccount(new StorageCredentials("accountname", "accountkey"), false); 
    var serviceProperties = cloudStorageAccount.CreateCloudBlobClient().GetServiceProperties(); 
    var serviceVersion = serviceProperties.DefaultServiceVersion; 

DefaultServiceVersionを設定します。

var cloudStorageAccount = new CloudStorageAccount(new StorageCredentials("accountname", "accountkey"), false); 
    var serviceProperties = cloudStorageAccount.CreateCloudBlobClient().GetServiceProperties(); 
    serviceProperties.DefaultServiceVersion = "2013-08-15"; 
    cloudStorageAccount.CreateCloudBlobClient().SetServiceProperties(serviceProperties); 

あなたがDefaultServiceVersionを設定すると、それが動作するはずです。

+0

こんにちはGaurav、あなたはサービスのバージョンレベルをリセットする方法を知っていますか? BLOBアカウントの現在のレベルは「null」です。 serviceProperties.DefaultServiceVersionが表示されます。私はちょうど何かが将来間違っている場合に再びnullにリセットする方法が欲しい。私はコードを介してnullにリセットしようとしましたが、うまくいきません。 –

関連する問題