Динамически получить значение свойства BLOB-объекта Azure - PullRequest
0 голосов
/ 17 декабря 2018

Существует ли способ динамического получения свойства BLOB-объекта Azure без явного упоминания о нем.

Пример: если я хочу получить дату создания BLOB-объекта, мне нужно написать что-то вроде этого

CloudStorageAccount storageAccount = CloudStorageAccount.Parse("Storage Account")
CloudBlobClient sourceBlobClient = storageAccount.CreateCloudBlobClient();

var sourceContainer = sourceBlobClient.GetContainerReference("Container Name");
var blockBlob = blobContainer.GetBlockBlobReference("Blob Name");

blockBlob.FetchAttributesAsync().Wait();
var blobCreatedDate = blockBlob.Properties.Created;

Я стараюсь избегать явного упоминания «Создано», присутствующего в последнем утверждении.

Есть ли указатель для достижения этой цели?мы можем просмотреть свойства blob?

1 Ответ

0 голосов
/ 18 декабря 2018

Наконец-то я смог добиться этого вот так

CloudStorageAccount storageAccount = CloudStorageAccount.Parse("Storage Account")
CloudBlobClient sourceBlobClient = storageAccount.CreateCloudBlobClient();

var sourceContainer = sourceBlobClient.GetContainerReference("Container Name");
var blockBlob = blobContainer.GetBlockBlobReference("Blob Name");

blockBlob.FetchAttributesAsync().Wait();
//var blobCreatedDate = blockBlob.Properties.Created;
var propName = "Created"
Type tModelType = blockBlob.Properties.GetType();
var propertyInfo = tModelType.GetProperty(propName);
If  (propertyInfo != null) {
    var blobCreatedDate = propertyInfo.GetValue(blockBlob.Properties).ToString();
}
...