c# - 如何从我的 Azure 容器中的每个 blob 中检索元数据?
问题描述
我无法从我创建的 Azure 容器访问元数据。有 2 个具有 2 个值的键,第一个元数据是 {key: cellNumber value:12345678} 第二个是 {key: homeNumber value:098876543}。我正在尝试访问我的 blobs 容器的元数据部分中的信息,但没有给我任何信息。我尝试从此处链接获取属性,但遵循这些步骤仍然没有为我提供任何价值或密钥。
var blobServiceClient = new BlobServiceClient(System.Environment.GetEnvironmentVariable("BlobConnection"));
var containerClient = blobServiceClient.GetBlobContainerClient("myContainer");
var blobs = containerClient.GetBlobs(prefix: "myFile.txt");
foreach (var item in blobs)
{
//This prints nothing and the count = to zero
Console.WriteLine(item.Metadata.Key);
if(item.Metadata.Key == "cellPhone" {
//Here goes some logic for my code
}
}
解决方案
要获取元数据,请更改以下代码行:
var blobs = containerClient.GetBlobs(prefix: "myFile.txt");
至
var blobs = containerClient.GetBlobs(prefix: "myFile.txt", traits: BlobTraits.Metadata);
那么您应该会看到为 blob 填充的元数据。您可以在此处了解有关 BlobTraits 的更多信息:https ://docs.microsoft.com/en-us/dotnet/api/azure.storage.blobs.models.blobtraits?view=azure-dotnet 。
推荐阅读
- linux - 如何从源代码构建 Guile 库?
- python - 使用python从netCDF文件中提取数据
- android - 版本更新后我的 Android 电子邮件代码损坏
- javascript - 当我单击其中的任何位置时,如何阻止我的模态关闭
- ios - iOS本机媒体控制器名称?
- javascript - 当我从另一个函数中存在的另一个 api(openweathermap) 获取 LatLng 时没有获取地图
- html - 如何获取第二个网页的数据?
- c++ - 错误:“io_context”不是“boost::asio”的成员,错误:“steady_timer”不是“boost::asio”的成员
- android - Android 数据绑定不会在 RecyclerView 中生成有界视图
- python - 安装 mmf 时的 torchvision 版本问题