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

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:

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.

Ügyfélkódtár erőforrásai