Я почти уверен, что это ограничение Windows Azure SDK (с использованием последней версии 1.4), но должен быть способ обойти это без использования ручного REST ...
Код:
CloudBlob blob = container.GetBlobReference(url); // works
blob.UploadByteArray(bytes); // works
blob.Metadata["test"] = "public, max-age=259200"; // works
// FAILS with "The metadata specified is invalid. It has characters that are not permitted."
blob.Metadata["x-ms-blob-cache-control"] = "public, max-age=259200";
blob.SetMetadata(); // FAILS due to the 2nd meta data
Из моих тестов довольно ясно, что клиент взрывается из-за этих черточек '-', но я не могу придумать никакого способа обойти это.Настройка управления кешем очень важна, и это обычная операция, которая сбивает меня с толку, почему я не могу найти никого другого, сообщающего об этой проблеме.
Я также пытался кодировать данные, что технически не должно быть необходимым,но в отчаянии я все равно это сделал.Идеи?