Hızlı Başlangıç: .NET için Azure Blob Depolama istemci kitaplığı

Not

Sıfırdan oluştur seçeneği, yeni proje oluşturma, paketleri yükleme, kodu yazma ve temel bir konsol uygulamasını çalıştırma sürecinde adım adım size yol gösterir. Azure Blob Depolama bağlanan bir uygulama oluştururken yer alan tüm ayrıntıları anlamak istiyorsanız bu yaklaşım önerilir. Dağıtım görevlerini otomatikleştirmeyi ve tamamlanmış bir projeyle başlamayı tercih ediyorsanız Şablonla başla'yı seçin.

Not

Şablonla başla seçeneği, dağıtım görevlerini otomatikleştirmek için Azure Geliştirici CLI'sini kullanır ve tamamlanmış bir projeyle çalışmaya başlar. Bu yaklaşım, kurulum görevlerine geçmeden kodu mümkün olan en kısa sürede keşfetmek istiyorsanız önerilir. Uygulamayı derlemek için adım adım yönergeleri tercih ediyorsanız Sıfırdan oluştur'u seçin.

Bu hızlı başlangıçta kapsayıcı oluşturmak, blobları karşıya yüklemek ve indirmek ve kapsayıcıdaki blobları listelemek üzere .NET için Azure Blob Depolama istemci kitaplığının nasıl kullanılacağı gösterilmektedir.

Bu makalede, paketi yüklemek için adımları izleyin ve temel görevler için örnek kodu deneyin.

Bu makalede, Azure kaynaklarını dağıtmak ve yalnızca birkaç komutla tamamlanmış bir konsol uygulaması çalıştırmak için Azure Geliştirici CLI'sini kullanacaksınız.

API başvuru belgeleri | Kitaplık kaynak kodu | Paket (NuGet) | Örnekler

Bu videoda .NET için Azure Blob Depolama istemci kitaplığını kullanmaya nasıl başlayacağınız gösterilmektedir.

Videodaki adımlar aşağıdaki bölümlerde de açıklanmıştır.

Önkoşullar

Kurulum

Bu bölüm, .NET için Azure Blob Depolama istemci kitaplığıyla çalışmak üzere bir proje hazırlama işleminde size yol gösterir.

Proje oluşturma

.NET CLI veya Visual Studio 2022 kullanarak bir .NET konsol uygulaması oluşturun.

  1. Visual Studio en üstünde File>New>Project gidin.

  2. İletişim kutusu penceresinde, proje şablonu arama kutusuna konsol uygulaması girin ve ilk sonucu seçin. İletişim kutusunun altında İleri'yi seçin.

    Visual Studio’da yeni bir konsol uygulaması projesi oluşturmanın ekran görüntüsü.

  3. Proje Adı için BlobQuickstart girin. Kalan alanlar için varsayılan değerleri koruyun ve İleri'yi seçin.

  4. Framework için .NET'ın en son yüklü sürümünün seçili olduğundan emin olun. Ardından Oluştur’u seçin. Yeni proje Visual Studio ortamında açılır.

paketini yükleyin

Azure Blob Depolama ile etkileşim kurmak için .NET için Azure Blob Depolama istemci kitaplığını yükleyin.

  1. Çözüm Gezgini'da projenizin Bağımlılıklar düğümüne sağ tıklayın. NuGet Paketlerini Yönet'i seçin.

  2. Sonuçta elde edilen pencerede Azure.Storage.Blobs araması yapın. Uygun sonucu seçin ve Yükle'yi seçin.

    Visual Studio'da NuGet paketi yükleme ekran görüntüsü.

Uygulama kodunu ayarlama

Dosyadaki Program.cs başlangıç kodunu, bu alıştırma için gerekli using deyimleri içeren aşağıdaki örnekle eşleşmesi için değiştirin.

using Azure.Storage.Blobs;
using Azure.Storage.Blobs.Models;
using System;
using System.IO;

// See https://aka.ms/new-console-template for more information
Console.WriteLine("Hello, World!");

Azure Developer CLI yüklediğinizde, bir depolama hesabı oluşturabilir ve örnek kodu yalnızca birkaç komutla çalıştırabilirsiniz. Projeyi yerel geliştirme ortamınızda veya DevContainer'da çalıştırabilirsiniz.

Azure Geliştirici CLI şablonunu başlatma ve kaynakları dağıtma

Boş bir dizinden şablonu başlatmak azd , Azure kaynaklarını sağlamak ve kodu kullanmaya başlamak için şu adımları izleyin:

  • GitHub'dan hızlı başlangıç deposu varlıklarını kopyalayın ve şablonu yerel olarak başlatın:

    azd init --template blob-storage-quickstart-dotnet
    

    Aşağıdaki bilgiler istenir:

    • Environment name: Azure Developer CLI, oluşturduğu tüm Azure kaynaklar için ön ek olarak bu değeri kullanır. Ad tüm Azure aboneliklerde benzersiz olmalı ve 3 ile 24 karakter uzunluğunda olmalıdır. Ad yalnızca sayılar ve küçük harfler içerebilir.
  • Azure'da oturum açın:

    azd auth login
    
  • Kaynakları sağlayın ve Azure'a dağıtın:

    azd up
    

    Aşağıdaki bilgiler istenir:

    • Abonelik: Kaynaklarınızın dağıtılacağı Azure aboneliği.
    • Konum: Kaynaklarınızın dağıtıldığı Azure bölgesi.

    Dağıtımın tamamlanması birkaç dakika sürebilir. Komutun çıktısı azd up , yeni oluşturulan depolama hesabının adını içerir ve daha sonra kodu çalıştırmanız gerekir.

Örnek kodu çalıştırma

Bu noktada kaynakları Azure dağıttınız ve proje çalışmaya hazır. Koddaki depolama hesabının adını güncelleştirmek ve örnek konsol uygulamasını çalıştırmak için şu adımları izleyin:

  • Depolama hesabı adını güncelleştirin: src dizinine gidin ve Program.cs öğesini düzenleyin. Yer tutucuyu <storage-account-name> bulun ve azd up komutuyla oluşturulan depolama hesabının gerçek adıyla değiştirin. Değişikliklerinizi kaydedin.
  • Projeyi çalıştırma: Visual Studio kullanıyorsanız kodu derleyip çalıştırmak ve konsol uygulamasıyla etkileşim kurmak için F5 tuşuna basın. .NET CLI kullanıyorsanız uygulama dizininize gidin, dotnet build kullanarak projeyi derleyin ve dotnet run kullanarak uygulamayı çalıştırın.
  • Çıkışı gözlemleyin: Bu uygulama yerel veri klasörünüzde bir test dosyası oluşturur ve depolama hesabındaki bir kapsayıcıya yükler. Örnek daha sonra kapsayıcıdaki blobları listeler ve eski ve yeni dosyaları karşılaştırabilmeniz için dosyayı yeni bir adla indirir.

Örnek kodun nasıl çalıştığı hakkında daha fazla bilgi edinmek için bkz . Kod örnekleri.

Kodu test etme işlemini tamamladığınızda, komutu tarafından oluşturulan kaynakları silmek için Kaynaklarıazd up.

Nesne modeli

Azure Blob Depolama, çok büyük miktarlarda yapılandırılmamış verileri depolamak için iyileştirilmiştir. Yapılandırılmamış veriler, metin veya ikili veri gibi belirli bir veri modeline veya tanımına uymaz. Blob depolama üç tür kaynak sunar:

  • Depolama hesabı
  • Depolama hesabındaki bir kapsayıcı
  • Kapsayıcıdaki bir blob

Aşağıdaki diyagramda bu kaynaklar arasındaki ilişki gösterilmektedir.

Blob depolama mimarisinin diyagramı.

Bu kaynaklarla etkileşime geçmek için aşağıdaki .NET sınıflarını kullanın:

  • BlobServiceClient: Azure Depolama kaynakları ve blob kapsayıcılarıyla çalışmak için BlobServiceClient sınıfını kullanın.
  • BlobContainerClient: Azure Depolama kapsayıcıları ve bloblarıyla çalışmak için BlobContainerClient sınıfını kullanın.
  • BlobClient: Azure Depolama bloblarla çalışmak için BlobClient sınıfını kullanın.

Kod örnekleri

Aşağıdaki bölümlerde yer alan örnek kod parçacıkları, .NET için Azure Blob Depolama istemci kitaplığıyla aşağıdaki görevlerin nasıl gerçekleştirileceklerini gösterir:

Önemli

Doğru NuGet paketlerini yüklediğinizden ve ayarlama bölümünde açıklandığı gibi kod örneklerinin çalışması için gerekli using deyimlerini eklediğinizden emin olun.

Not

Azure Geliştirici CLI şablonu, örnek kodun zaten mevcut olduğu bir proje içerir. Aşağıdaki örneklerde, örnek kodun her bölümü için ayrıntılı bilgi sağlanır. Şablon, Azure'da kimlik doğrulaması bölümünde açıklandığı gibi önerilen parolasız kimlik doğrulama yöntemini uygular. bağlantı dizesi yöntemi alternatif olarak gösterilir, ancak şablonda kullanılmaz ve üretim kodu için önerilmez.

Azure'da kimlik doğrulaması ve blob verilerine erişim yetkisi verme

Azure Blob Depolama uygulama istekleri yetkilendirilmelidir. DefaultAzureCredential Azure Identity istemci kitaplığı tarafından sağlanan sınıfı kullanmak, Blob Depolama da dahil olmak üzere kodunuzdaki Azure hizmetlerine parolasız bağlantılar uygulamak için önerilen yaklaşımdır.

Ayrıca, hesap erişim anahtarını kullanarak istekleri Azure Blob Depolama için yetkilendirebilirsiniz. Ancak bu yaklaşım dikkatli kullanılmalıdır. Geliştiriciler, erişim anahtarını güvenli olmayan bir konumda asla kullanıma sunmamak için dikkatli olmalıdır. Erişim anahtarına sahip olan herkes, depolama hesabına yönelik istekleri yetkilendirebiliyor ve tüm verilere etkin bir şekilde erişim sahibi oluyor. DefaultAzureCredential parolasız kimlik doğrulamasına izin vermek için hesap anahtarı üzerinde gelişmiş yönetim ve güvenlik avantajları sunar. Her iki seçenek de aşağıdaki örnekte gösterilmiştir.

, .NET için Azure Identity istemci kitaplığı tarafından sunulan ve DefaultAzureCredential genel bakışı üzerinde daha fazla bilgi edinebileceğiniz bir sınıftır. DefaultAzureCredential birden çok kimlik doğrulama yöntemini destekler ve çalışma zamanında hangi yöntemin kullanılacağını belirler. Bu yaklaşım, uygulamanızın ortama özgü kod uygulamadan farklı ortamlarda (yerel ve üretim) farklı kimlik doğrulama yöntemleri kullanmasını sağlar.

Kimlik bilgilerinin arandığı DefaultAzureCredential sıra ve konumlar Azure Kimlik kitaplığına genel bakış sayfasında bulunabilir.

Örneğin, uygulamanız, yerel olarak geliştirme yaparken Visual Studio oturum açma kimlik bilgilerinizi kullanarak kimlik doğrulaması yapabilir. Ardından uygulamanız Azure'a dağıtıldıktan sonra yönetilen kimliği kullanabilir. Bu geçiş için kod değişikliği gerekmez.

Microsoft Entra kullanıcı hesabınıza rol atama

Yerel olarak geliştirme yaparken blob verilerine erişen kullanıcı hesabının doğru izinlere sahip olduğundan emin olun. Blob verilerini okumak ve yazmak için Depolama Blob Verileri Katkıda Bulunan rolüne ihtiyacınız var. Kendinize bu rolü atamak için Kullanıcı Erişimi Yöneticisi rolüne veya Microsoft.Authorization/roleAssignments/write eylemini içeren başka bir role atanmalısınız. Azure portalı, Azure CLI veya Azure PowerShell'i kullanarak kullanıcıya Azure RBAC rolleri atayabilirsiniz. Depolama Blob Verisi Katkıda Bulunan rolü hakkında daha fazla bilgi için Depolama Blob Verisi Katkıda Bulunan sayfasına bakın. Rol atamaları için kullanılabilir kapsamlar hakkında daha fazla bilgi için bkz. Azure RBAC kapsamını anlama.

Bu senaryoda, En Az Ayrıcalık İlkesi'ni izlemek için depolama hesabı kapsamındaki kullanıcı hesabınıza izinler atayacaksınız. Bu uygulama kullanıcılara yalnızca gereken minimum izinleri verir ve daha güvenli üretim ortamları oluşturur.

Aşağıdaki örnek, depolama hesabınızdaki blob verilerine hem okuma hem de yazma erişimi sağlayan Depolama Blob Verileri Katkıda Bulunanı rolünü kullanıcı hesabınıza atar.

Önemli

Çoğu durumda rol atamasının Azure'a yayılması bir veya iki dakika sürer, ancak nadir durumlarda sekiz dakikaya kadar sürebilir. Kodunuzu ilk kez çalıştırdığınızda kimlik doğrulama hataları alıyorsanız, birkaç dakika bekleyin ve yeniden deneyin.

  1. Azure portalında ana arama çubuğunu veya sol gezintiyi kullanarak depolama hesabınızı bulun.

  2. Depolama hesabına genel bakış sayfasında sol taraftaki menüden Erişim denetimi (IAM) öğesini seçin.

  3. Erişim denetimi (IAM) sayfasında Rol atamaları sekmesini seçin.

  4. Üst menüden + Ekle'yi seçin ve ardından açılan menüden Rol ataması ekle'yi seçin.

    Rol atamayı gösteren ekran görüntüsü.

  5. Sonuçları istenen role göre filtrelemek için arama kutusunu kullanın. Bu örnek için Depolama Blobu Veri Katkıda Bulunanı'nı arayın ve eşleşen sonucu seçin ve ardından İleri'yi seçin.

  6. Erişim atama altında, Kullanıcı, grup veya hizmet temsilcisi seçin ve ardından + Üyeleri Seç'e tıklayın.

  7. İletişim kutusunda Microsoft Entra kullanıcı adınızı (genellikle user@domain e-posta adresiniz) arayın ve iletişim kutusunun alt kısmındaki Seç'i seçin.

  8. Gözden geçir + ata'yı seçerek son sayfaya gidin, ardından işlemi tamamlamak için Gözden geçir + ata'yı tekrar seçin.

DefaultAzureCredential kullanarak oturum açın ve uygulama kodunuzu Azure'a bağlayın

Aşağıdaki adımları kullanarak depolama hesabınızdaki verilere erişimi yetkileyebilirsiniz:

  1. Yerel geliştirme için, rolü atadığınız Microsoft Entra hesabıyla kimliğinizin doğrulanmış olduğundan emin olun. Azure CLI veya Azure PowerShell gibi popüler geliştirme araçlarıyla kimlik doğrulaması yapabilirsiniz. Kimlik doğrulaması yapabileceğiniz geliştirme araçları farklı dillerde farklılık gösterir.

    Aşağıdaki komutu kullanarak Azure CLI aracılığıyla Azure'da oturum açın:

    az login
    
  2. DefaultAzureCredential kullanmak için Azure.Identity paketini uygulamanıza ekleyin.

    1. Çözüm Gezgini'da projenizin Bağımlılıklar düğümüne sağ tıklayın. NuGet Paketlerini Yönet'i seçin.

    2. Sonuçta elde edilen pencerede Azure.Identity araması yapın. Uygun sonucu seçin ve Yükle'yi seçin.

      Kimlik paketinin nasıl ekleneceğini gösteren ekran görüntüsü.

  3. Program.cs kodunuzu aşağıdaki örnekle eşleşecek şekilde güncelleştirin. Kod geliştirme sırasında yerel iş istasyonunuzda çalıştırıldığında, Azure CLI veya Visual Studio gibi Azure'da kimlik doğrulaması yapmak için oturum açtığınız öncelikli aracın geliştirici kimlik bilgilerini kullanır.

    using Azure.Storage.Blobs;
    using Azure.Storage.Blobs.Models;
    using System;
    using System.IO;
    using Azure.Identity;
    
    // TODO: Replace <storage-account-name> with your actual storage account name
    var blobServiceClient = new BlobServiceClient(
            new Uri("https://<storage-account-name>.blob.core.windows.net"),
            new DefaultAzureCredential());
    
  4. URI'nizdeki depolama hesabı adını güncellediğinizden emin olun. Depolama hesabı adı, Azure portalının genel bakış sayfasında bulunabilir.

    Depolama hesabı adını bulmayı gösteren ekran görüntüsü.

    Not

    Azure'a dağıtıldığında, Azure'da çalışan bir uygulamadan Azure Depolama'ya yönelik istekleri yetkilendirmek için aynı kod kullanılabilir. Ancak Azure'daki uygulamanızda yönetilen kimliği etkinleştirmeniz gerekir. Ardından depolama hesabınızı bu yönetilen kimliğin bağlanmasına izin verecek şekilde yapılandırın. Azure hizmetleri arasında bu bağlantıyı yapılandırma hakkında ayrıntılı yönergeler için Bkz. Azure tarafından barındırılan uygulamalardan kimlik doğrulama öğreticisi.

Kapsayıcı oluşturma

`blobServiceClient yöntemini çağırarak depolama hesabınızda yeni bir kapsayıcı oluşturun.` Bu örnekte kod, benzersiz olduğundan emin olmak için kapsayıcı adına bir GUID değeri ekler.

Program.cs dosyasının sonuna aşağıdaki kodu ekleyin:

// TODO: Replace <storage-account-name> with your actual storage account name
var blobServiceClient = new BlobServiceClient(
        new Uri("https://<storage-account-name>.blob.core.windows.net"),
        new DefaultAzureCredential());

//Create a unique name for the container
string containerName = "quickstartblobs" + Guid.NewGuid().ToString();

// Create the container and return a container client object
BlobContainerClient containerClient = await blobServiceClient.CreateBlobContainerAsync(containerName);

Kapsayıcı oluşturma hakkında daha fazla bilgi edinmek ve daha fazla kod örneği keşfetmek için bkz . .NET ile blob kapsayıcısı oluşturma.

Önemli

Kapsayıcı adlarının küçük harfle yazılması gerekir. Kapsayıcıları ve blobları adlandırma hakkında daha fazla bilgi için bkz. Kapsayıcıları, Blobları ve Meta Verileri Adlandırma ve Bunlara Başvurma.

Bir kapsayıcıya blob yükleme

UploadAsync kullanarak kapsayıcıya blob yükleyin. Örnek kod, kapsayıcıya yüklemek için yerel veri dizininde bir metin dosyası oluşturur.

Program.cs dosyasının sonuna aşağıdaki kodu ekleyin:

// Create a local file in the ./data/ directory for uploading and downloading
string localPath = "data";
Directory.CreateDirectory(localPath);
string fileName = "quickstart" + Guid.NewGuid().ToString() + ".txt";
string localFilePath = Path.Combine(localPath, fileName);

// Write text to the file
await File.WriteAllTextAsync(localFilePath, "Hello, World!");

// Get a reference to a blob
BlobClient blobClient = containerClient.GetBlobClient(fileName);

Console.WriteLine("Uploading to Blob storage as blob:\n\t {0}\n", blobClient.Uri);

// Upload data from the local file, overwrite the blob if it already exists
await blobClient.UploadAsync(localFilePath, true);

Blobları karşıya yükleme hakkında daha fazla bilgi edinmek ve daha fazla kod örneği keşfetmek için .NET ile blob yüklemeye bakın.

Kapsayıcıdaki blobları listeleme

GetBlobsAsync yöntemini çağırarak kapsayıcıdaki blobları listeleyin.

Program.cs dosyasının sonuna aşağıdaki kodu ekleyin:

Console.WriteLine("Listing blobs...");

// List all blobs in the container
await foreach (BlobItem blobItem in containerClient.GetBlobsAsync())
{
    Console.WriteLine("\t" + blobItem.Name);
}

Blobları listeleme hakkında daha fazla bilgi edinmek ve daha fazla kod örneği keşfetmek için bkz. Blobları .NET ile listeleme.

Blob indir

DownloadToAsync yöntemini çağırarak daha önce oluşturduğunuz blobu indirin. Örnek kod, her iki dosyayı da yerel dosya sisteminde görebilmeniz için dosya adına "İnDİrİlDİ" dizesini ekler.

Program.cs dosyasının sonuna aşağıdaki kodu ekleyin:

// Download the blob to a local file
// Append the string "DOWNLOADED" before the .txt extension 
// so you can compare the files in the data directory
string downloadFilePath = localFilePath.Replace(".txt", "DOWNLOADED.txt");

Console.WriteLine("\nDownloading blob to\n\t{0}\n", downloadFilePath);

// Download the blob's contents and save it to a file
await blobClient.DownloadToAsync(downloadFilePath);

Blobları indirme hakkında daha fazla bilgi edinmek ve daha fazla kod örneği keşfetmek için bkz. .NET.

Bir kapsayıcıyı sil

Aşağıdaki kod DeleteAsync kullanarak kapsayıcıyı silerek uygulamanın oluşturduğu kaynakları temizler. Kod örneği, uygulamanın oluşturduğu yerel dosyaları da siler.

Uygulama, blob'u, kapsayıcıyı ve yerel dosyaları silmeden önce Console.ReadLine çağırarak kullanıcı girişi için duraklatılır. Bu duraklama, uygulama bunları silmeden önce kaynakların doğru oluşturulduğunu doğrulamak için iyi bir şanstır.

Bir kapsayıcıyı sildikten sonra, en az 30 saniye boyunca aynı ada sahip başka bir kapsayıcı oluşturamazsınız. Ayrıca, hizmet isteği işlemeye devam ediyorsa kapsayıcı 30 saniyeden uzun süre kullanılamayabilir. Kapsayıcı silinirken, aynı ada sahip bir kapsayıcı oluşturma girişimi çakışma oluşturur ve 409 durum koduyla başarısız olur. Hizmet, kapsayıcının silindiğini gösterir. Kapsayıcı içindeki bloblardaki işlemler de dahil olmak üzere diğer tüm işlemler bulunamaz ve kapsayıcı silinirken 404 durum koduyla başarısız olur.

Program.cs dosyasının sonuna aşağıdaki kodu ekleyin:

// Clean up
Console.Write("Press any key to begin clean up");
Console.ReadLine();

Console.WriteLine("Deleting blob container...");
await containerClient.DeleteAsync();

Console.WriteLine("Deleting the local source and downloaded files...");
File.Delete(localFilePath);
File.Delete(downloadFilePath);

Console.WriteLine("Done");

Kapsayıcıyı silme hakkında daha fazla bilgi edinmek ve daha fazla kod örneği keşfetmek için bkz. .NET ile blob kapsayıcısını silme ve geri yükleme.

Tamamlanan kod

Bu adımları tamamladıktan sonra, dosyanızdaki Program.cs kod artık aşağıdakine benzer olmalıdır:

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

// TODO: Replace <storage-account-name> with your actual storage account name
var blobServiceClient = new BlobServiceClient(
        new Uri("https://<storage-account-name>.blob.core.windows.net"),
        new DefaultAzureCredential());

//Create a unique name for the container
string containerName = "quickstartblobs" + Guid.NewGuid().ToString();

// Create the container and return a container client object
BlobContainerClient containerClient = await blobServiceClient.CreateBlobContainerAsync(containerName);

// Create a local file in the ./data/ directory for uploading and downloading
string localPath = "data";
Directory.CreateDirectory(localPath);
string fileName = "quickstart" + Guid.NewGuid().ToString() + ".txt";
string localFilePath = Path.Combine(localPath, fileName);

// Write text to the file
await File.WriteAllTextAsync(localFilePath, "Hello, World!");

// Get a reference to a blob
BlobClient blobClient = containerClient.GetBlobClient(fileName);

Console.WriteLine("Uploading to Blob storage as blob:\n\t {0}\n", blobClient.Uri);

// Upload data from the local file
await blobClient.UploadAsync(localFilePath, true);

Console.WriteLine("Listing blobs...");

// List all blobs in the container
await foreach (BlobItem blobItem in containerClient.GetBlobsAsync())
{
    Console.WriteLine("\t" + blobItem.Name);
}

// Download the blob to a local file
// Append the string "DOWNLOADED" before the .txt extension 
// so you can compare the files in the data directory
string downloadFilePath = localFilePath.Replace(".txt", "DOWNLOADED.txt");

Console.WriteLine("\nDownloading blob to\n\t{0}\n", downloadFilePath);

// Download the blob's contents and save it to a file
await blobClient.DownloadToAsync(downloadFilePath);

// Clean up
Console.Write("Press any key to begin clean up");
Console.ReadLine();

Console.WriteLine("Deleting blob container...");
await containerClient.DeleteAsync();

Console.WriteLine("Deleting the local source and downloaded files...");
File.Delete(localFilePath);
File.Delete(downloadFilePath);

Console.WriteLine("Done");

Kodu çalıştırma

Bu uygulama yerel veri klasörünüzde bir test dosyası oluşturur ve blob depolamaya yükler. Örnek daha sonra kapsayıcıdaki blobları listeler ve eski ve yeni dosyaları karşılaştırabilmeniz için dosyayı yeni bir adla indirir.

Visual Studio kullanıyorsanız kodu derleyip çalıştırmak ve konsol uygulamasıyla etkileşim kurmak için F5 tuşuna basın. .NET CLI kullanıyorsanız uygulama dizininize gidin, ardından uygulamayı derleyip çalıştırın.

dotnet build
dotnet run

Uygulamanın çıkışı aşağıdaki örneğe benzer (okunabilirlik için atlanmış GUID değerleri):

Azure Blob Storage - .NET quickstart sample

Uploading to Blob storage as blob:
         https://mystorageacct.blob.core.windows.net/quickstartblobsGUID/quickstartGUID.txt

Listing blobs...
        quickstartGUID.txt

Downloading blob to
        ./data/quickstartGUIDDOWNLOADED.txt

Press any key to begin clean up
Deleting blob container...
Deleting the local source and downloaded files...
Done

Temizleme işlemine başlamadan önce iki dosya için veri klasörünüzü denetleyin. Bunları açabilir ve aynı olduklarını gözlemleyebilirsiniz.

Kaynakları temizleme

Dosyaları doğruladıktan ve testi tamamladıktan sonra, depolama hesabında oluşturduğunuz kapsayıcıyla birlikte test dosyalarını silmek için Enter tuşuna basın. Kaynakları silmek için Azure CLI'yi de kullanabilirsiniz.

Hızlı başlangıcı tamamladığınızda, aşağıdaki komutu çalıştırarak oluşturduğunuz kaynakları temizleyin:

azd down

Kaynakların silinmesini onaylamanız istenir. Onaylamak için girin y .

Sonraki adım