0

'b/123?/1.xml' の 'a' というコンテナーにブロブがあり、クラウドクライアント経由で削除するのに問題があります。

string blobAddressUri = "b/123%3f/1.xml";
var cloudBlobContainer = csa.CreateCloudBlobClient().GetContainerReference("ndrdata");
var blobToDelete = cloudBlobContainer.GetBlobReference(HttpUtility.UrlEncode(blobAddressUri));
            blobToDelete.Delete();

これは、? を使用してさまざまなバリエーションで試したコードです。対 %3f。文字列の UrlEncoding ではありません。

CloudBerry を介して SAS URI を生成し、「?」を置き換えると、ファイルにアクセスできます。%3f で。

助けてくれてありがとう。

4

1 に答える 1

0

使用しているストレージクライアントライブラリのバージョンは何ですか?私はバージョン1.7.0を使用し、開発用ストレージに対して次のコードを使用しましたが、問題なく動作しました。

            var storage = CloudStorageAccount.DevelopmentStorageAccount;
        string blobAddressUri = "b/123?/MainWindow.xaml";
        var cloudBlobContainer = storage.CreateCloudBlobClient().GetContainerReference("abc");
        var blobToDelete = cloudBlobContainer.GetBlobReference(blobAddressUri);
        blobToDelete.Delete();
于 2012-09-03T05:30:52.467 に答える