Megosztás a következőn keresztül:


Blobtároló létrehozása .NET-tel

Az Azure Storage-blobok tárolókba vannak rendezve. Mielőtt feltölthet egy blobot, először létre kell hoznia egy tárolót. Ez a cikk bemutatja, hogyan hozhat létre tárolókat a .NET-hez készült Azure Storage ügyfélkódtárral.

Előfeltételek

Saját környezet beállítása

Ha nem rendelkezik meglévő projekttel, ez a szakasz bemutatja, hogyan állíthat be projektet a .NET-hez készült Azure Blob Storage ügyfélkódtár használatához. A lépések közé tartozik a csomagtelepítés, az irányelvek hozzáadása using és egy engedélyezett ügyfélobjektum létrehozása. További részletekért tekintse meg az Azure Blob Storage és a .NET használatának első lépéseit.

Csomagok telepítése

A projektkönyvtárból telepítse az Azure Blob Storage- és Az Azure Identity-ügyfélkódtárak csomagjait a dotnet add package paranccsal. Az Azure.Identity-csomagra az Azure-szolgáltatásokhoz való jelszó nélküli kapcsolatokhoz van szükség.

dotnet add package Azure.Storage.Blobs
dotnet add package Azure.Identity

Irányelvek hozzáadása using

Adja hozzá ezeket az using irányelveket a kódfájl elejéhez:

using Azure.Identity;
using Azure.Storage.Blobs;
using Azure.Storage.Blobs.Models;
using Azure.Storage.Blobs.Specialized;

A cikkben szereplő néhány példakód további using irányelveket igényelhet.

Ügyfélobjektum létrehozása

Ha egy alkalmazást a Blob Storage-hoz szeretne csatlakoztatni, hozzon létre egy BlobServiceClient-példányt. Az alábbi példa bemutatja, hogyan hozhat létre ügyfélobjektumot DefaultAzureCredential engedélyezés céljából:

public BlobServiceClient GetBlobServiceClient(string accountName)
{
    BlobServiceClient client = new(
        new Uri($"https://{accountName}.blob.core.windows.net"),
        new DefaultAzureCredential());

    return client;
}

A szolgáltatásügyfél regisztrálható a függőséginjektáláshoz egy .NET-alkalmazásban.

Ügyfélobjektumokat is létrehozhat adott tárolókhoz vagy blobokhoz. Az ügyfélobjektumok létrehozásáról és kezeléséről további információt az adaterőforrásokat kezelő ügyfélobjektumok létrehozása és kezelése című témakörben talál.

Engedélyezés

Az engedélyezési mechanizmusnak rendelkeznie kell a tároló létrehozásához szükséges engedélyekkel. A Microsoft Entra-azonosítóval való engedélyezéshez (ajánlott) az Azure RBAC beépített szerepkörű Storage Blob Data Közreműködő vagy újabb szerepkörre van szüksége. További információkért tekintse meg a Tároló létrehozása (REST API) engedélyezési útmutatóját.

Tudnivalók a tároló elnevezéséről

A tárolónévnek érvényes DNS-névnek kell lennie, mivel a tároló vagy a blobok kezeléséhez használt egyedi URI részét képezi. Tároló elnevezésekor kövesse az alábbi szabályokat:

  • A tárolónevek hossza 3 és 63 karakter között lehet.
  • A tárolóneveknek betűvel vagy számmal kell kezdődniük, és csak kisbetűket, számokat és kötőjelet (-) tartalmazhatnak.
  • Az egymást követő kötőjelek nem használhatók a tárolónevekben.

A tárolóerőforrás URI-ja a következőképpen van formázva:

https://my-account-name.blob.core.windows.net/my-container-name

Tároló létrehozása

Tároló létrehozásához hívja meg az osztály alábbi metódusainak egyikét BlobServiceClient :

Tárolót az osztály alábbi módszereinek BlobContainerClient egyikével is létrehozhat:

Ezek a metódusok kivételt képeznek, ha már létezik azonos nevű tároló.

A tárolók közvetlenül a tárfiók alatt jönnek létre. Az egyik tárolót nem lehet egymás alá ágyazni.

Az alábbi példa egy BlobServiceClient objektumot használ tároló aszinkron létrehozásához:

//-------------------------------------------------
// Create a container
//-------------------------------------------------
private static async Task<BlobContainerClient> CreateSampleContainerAsync(BlobServiceClient blobServiceClient)
{
    // Name the sample container based on new GUID to ensure uniqueness.
    // The container name must be lowercase.
    string containerName = "container-" + Guid.NewGuid();

    try
    {
        // Create the container
        BlobContainerClient container = await blobServiceClient.CreateBlobContainerAsync(containerName);

        if (await container.ExistsAsync())
        {
            Console.WriteLine("Created container {0}", container.Name);
            return container;
        }
    }
    catch (RequestFailedException e)
    {
        Console.WriteLine("HTTP error code {0}: {1}",
                            e.Status, e.ErrorCode);
        Console.WriteLine(e.Message);
    }

    return null;
}

A gyökértároló létrehozása

A gyökértároló a tárfiók alapértelmezett tárolójaként szolgál. Minden tárfiók rendelkezhet egy gyökértárolóval, amelyet $root kell nevezni. A gyökértárolót explicit módon kell létrehozni vagy törölni.

A gyökértárolóban tárolt blobra a gyökértároló neve nélkül hivatkozhat. A gyökértárolóval hivatkozhat egy blobra a tárfiók-hierarchia legfelső szintjén. Hivatkozhat például egy blobra, amely a gyökértárolóban található a következő módon:

https://myaccount.blob.core.windows.net/default.html

Az alábbi példa szinkron módon hozza létre a gyökértárolót:

//-------------------------------------------------
// Create root container
//-------------------------------------------------
private static void CreateRootContainer(BlobServiceClient blobServiceClient)
{
    try
    {
        // Create the root container or handle the exception if it already exists
        BlobContainerClient container =  blobServiceClient.CreateBlobContainer("$root");

        if (container.Exists())
        {
            Console.WriteLine("Created root container.");
        }
    }
    catch (RequestFailedException e)
    {
        Console.WriteLine("HTTP error code {0}: {1}",
                            e.Status, e.ErrorCode);
        Console.WriteLine(e.Message);
    }
}

Források

Ha többet szeretne megtudni a tárolók .NET-hez készült Azure Blob Storage-ügyfélkódtár használatával történő létrehozásáról, tekintse meg az alábbi erőforrásokat.

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 tároló létrehozásához használt ügyfélkódtár-metódusok a következő REST API-műveletet használják:

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