Tárolótulajdonságok és metaadatok kezelése a .NET-tel
A blobtárolók támogatják a rendszertulajdonságokat és a felhasználó által definiált metaadatokat az általuk tárolt adatok mellett. Ez a cikk bemutatja, hogyan kezelheti a rendszertulajdonságokat és a felhasználó által definiált metaadatokat a .NET-hez készült Azure Storage-ügyfélkódtárral.
Előfeltételek
- Ez a cikk feltételezi, hogy már rendelkezik egy projekttel, amely az Azure Blob Storage .NET-hez készült ügyfélkódtárával dolgozik. A projekt beállításával, beleértve a csomagtelepítést, az irányelvek hozzáadását
using
és egy engedélyezett ügyfélobjektum létrehozását, olvassa el az Azure Blob Storage és a .NET használatának első lépéseit. - Az engedélyezési mechanizmusnak engedéllyel kell rendelkeznie a tároló tulajdonságainak vagy metaadatainak használatához. További információkért tekintse meg az alábbi REST API-műveletek engedélyezési útmutatóját:
Tudnivalók a tulajdonságokról és a metaadatokról
Rendszertulajdonságok: A rendszertulajdonságok minden Blob Storage-erőforráson léteznek. Ezek némelyike olvasható vagy beállítható, míg mások írásvédettek. A borítók alatt egyes rendszertulajdonságok megfelelnek bizonyos szabványos HTTP-fejléceknek. A .NET-hez készült Azure Storage-ügyfélkódtár ezeket a tulajdonságokat fenntartja Önnek.
Felhasználó által definiált metaadatok: A felhasználó által definiált metaadatok egy vagy több, Blob Storage-erőforráshoz megadott név-érték párból állnak. Metaadatok használatával további értékeket tárolhat az erőforrással. A metaadat-értékek csak saját célra szolgálnak, és nem befolyásolják az erőforrás viselkedését.
A metaadat-név/érték párok érvényes HTTP-fejlécek, és be kell tartaniuk a HTTP-fejlécekre vonatkozó összes korlátozást. A metaadatok elnevezési követelményeiről további információt a Metaadatnevek című témakörben talál.
Tárolótulajdonságok lekérése
A tároló tulajdonságainak lekéréséhez hívja meg az alábbi módszerek egyikét:
Az alábbi példakód beolvassa egy tároló rendszertulajdonságait, és ír néhány tulajdonságértéket egy konzolablakba:
private static async Task ReadContainerPropertiesAsync(BlobContainerClient container)
{
try
{
// Fetch some container properties and write out their values.
var properties = await container.GetPropertiesAsync();
Console.WriteLine($"Properties for container {container.Uri}");
Console.WriteLine($"Public access level: {properties.Value.PublicAccess}");
Console.WriteLine($"Last modified time in UTC: {properties.Value.LastModified}");
}
catch (RequestFailedException e)
{
Console.WriteLine($"HTTP error code {e.Status}: {e.ErrorCode}");
Console.WriteLine(e.Message);
Console.ReadLine();
}
}
Metaadatok beállítása és lekérése
A metaadatokat egy vagy több név-érték párként is megadhatja egy blob- vagy tárolóerőforráson. Metaadatok beállításához adjon hozzá név-érték párokat egy IDictionary-objektumhoz , majd hívja meg az alábbi módszerek egyikét az értékek megírásához:
Az alábbi példakód egy tároló metaadatait állítja be.
public static async Task AddContainerMetadataAsync(BlobContainerClient container)
{
try
{
IDictionary<string, string> metadata =
new Dictionary<string, string>();
// Add some metadata to the container.
metadata.Add("docType", "textDocuments");
metadata.Add("category", "guidance");
// Set the container's metadata.
await container.SetMetadataAsync(metadata);
}
catch (RequestFailedException e)
{
Console.WriteLine($"HTTP error code {e.Status}: {e.ErrorCode}");
Console.WriteLine(e.Message);
Console.ReadLine();
}
}
Metaadatok lekéréséhez hívja meg az alábbi módszerek egyikét:
Ezután olvassa el az értékeket az alábbi példában látható módon.
public static async Task ReadContainerMetadataAsync(BlobContainerClient container)
{
try
{
var properties = await container.GetPropertiesAsync();
// Enumerate the container's metadata.
Console.WriteLine("Container metadata:");
foreach (var metadataItem in properties.Value.Metadata)
{
Console.WriteLine($"\tKey: {metadataItem.Key}");
Console.WriteLine($"\tValue: {metadataItem.Value}");
}
}
catch (RequestFailedException e)
{
Console.WriteLine($"HTTP error code {e.Status}: {e.ErrorCode}");
Console.WriteLine(e.Message);
Console.ReadLine();
}
}
Források
A tároló tulajdonságainak és metaadatainak beállításáról és lekéréséről a .NET-hez készült Azure Blob Storage ügyfélkódtár használatával az alábbi forrásokban olvashat bővebben.
REST API-műveletek
A .NET-hez készült Azure SDK olyan kódtárakat tartalmaz, amelyek az Azure REST API-ra épülnek, lehetővé téve a REST API-műveletek használatát ismerős .NET-paradigmákon keresztül. A tulajdonságok és metaadatok beállítására és lekérésére szolgáló ügyfélkódtár-metódusok a következő REST API-műveleteket használják:
- Tároló tulajdonságainak lekérése (REST API)
- Tároló metaadatainak beállítása (REST API)
- Tároló metaadatainak lekérése (REST API)
A GetProperties
metódusok a GetPropertiesAsync
tároló tulajdonságait és metaadatait a Blob tulajdonságainak lekérése művelet és a Blob metaadatok lekérése művelet meghívásával kérik le.