Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Note
Opcja Kompiluj od podstaw przeprowadzi Cię krok po kroku przez proces tworzenia nowego projektu, instalowania pakietów, pisania kodu i uruchamiania podstawowej aplikacji konsolowej. To podejście jest zalecane, jeśli chcesz zrozumieć wszystkie szczegóły związane z tworzeniem aplikacji łączącej się z usługą Azure Blob Storage. Jeśli wolisz zautomatyzować zadania wdrażania i rozpocząć od ukończonego projektu, wybierz pozycję Rozpocznij od szablonu.
Note
Opcja Rozpocznij od szablonu wykorzystuje interfejs wiersza polecenia dla deweloperów platformy Azure do zautomatyzowania zadań wdrożeniowych i rozpoczęcia pracy z gotowym projektem. To podejście jest zalecane, jeśli chcesz eksplorować kod tak szybko, jak to możliwe bez przechodzenia przez zadania konfiguracji. Jeśli wolisz instrukcje krok po kroku dotyczące kompilowania aplikacji, wybierz pozycję Kompiluj od podstaw.
Rozpocznij pracę z biblioteką klienta usługi Azure Blob Storage dla platformy .NET. Usługa Azure Blob Storage to rozwiązanie magazynu obiektów firmy Microsoft dla chmury i zoptymalizowane pod kątem przechowywania ogromnych ilości danych bez struktury.
W tym artykule wykonasz kroki, aby zainstalować pakiet i wypróbować przykładowy kod dla podstawowych zadań.
W tym artykule użyjesz Azure Developer CLI, aby wdrożyć zasoby Azure i uruchomić gotową aplikację konsolową, wykorzystując tylko kilka poleceń.
Dokumentacja interfejsu API — przykłady | |
W tym filmie wideo pokazano, jak rozpocząć korzystanie z biblioteki klienta usługi Azure Blob Storage dla platformy .NET.
Kroki opisane w filmie wideo zostały również opisane w poniższych sekcjach.
Prerequisites
- Subskrypcja platformy Azure — utwórz jedną bezpłatnie
- Konto usługi Azure Storage — utwórz konto usługi Azure Storage
- Najnowszy zestaw .NET SDK dla systemu operacyjnego. Pamiętaj, aby pobrać zestaw SDK, a nie środowisko uruchomieniowe.
- Subskrypcja platformy Azure — utwórz jedną bezpłatnie
- Najnowszy zestaw .NET SDK dla systemu operacyjnego. Ten przykładowy kod używa platformy .NET 8.0. Pamiętaj, aby pobrać zestaw SDK, a nie środowisko uruchomieniowe.
- Azure CLI dla deweloperów
Konfigurowanie
Ta sekcja przeprowadzi Cię przez proces przygotowywania projektu do pracy z biblioteką klienta usługi Azure Blob Storage dla platformy .NET.
Tworzenie projektu
Utwórz aplikację konsolową platformy .NET przy użyciu interfejsu wiersza polecenia platformy .NET lub programu Visual Studio 2022.
W górnej części programu Visual Studio przejdź do pozycji Plik>nowy>projekt...
W oknie dialogowym wprowadź ciąg aplikacja konsolowa w polu wyszukiwania szablonu projektu i wybierz pierwszy wynik. Wybierz pozycję Dalej w dolnej części okna dialogowego.
W polu Nazwa projektu wprowadź blobQuickstart. Pozostaw wartości domyślne pozostałych pól i wybierz pozycję Dalej.
W przypadku programu Framework upewnij się, że wybrano najnowszą zainstalowaną wersję platformy .NET. Następnie wybierz pozycję Utwórz. Nowy projekt zostanie otwarty w środowisku programu Visual Studio.
Instalowanie pakietu
Aby korzystać z usługi Azure Blob Storage, zainstaluj bibliotekę klienta usługi Azure Blob Storage dla platformy .NET.
W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy węzeł Zależności projektu. Wybierz Zarządzaj pakietami NuGet.
W wyświetlonym oknie wyszukaj Azure.Storage.Blobs. Wybierz odpowiedni wynik, a następnie wybierz pozycję Zainstaluj.
Konfigurowanie kodu aplikacji
Zamień kod rozpoczynający w pliku Program.cs, tak aby odpowiadał poniższemu przykładowi, który zawiera niezbędne using polecenia do tego ćwiczenia.
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!");
Po zainstalowaniu Azure Developer CLI możesz utworzyć konto magazynowe i uruchomić przykładowy kod za pomocą kilku poleceń. Projekt można uruchomić w lokalnym środowisku deweloperskim lub w usłudze DevContainer.
Inicjowanie szablonu interfejsu wiersza polecenia dewelopera platformy Azure i wdrażanie zasobów
W pustym katalogu wykonaj następujące kroki, aby zainicjować azd szablon, aprowizować zasoby platformy Azure i rozpocząć pracę z kodem:
Sklonuj zasoby repozytorium szybkiego startu z usługi GitHub i zainicjuj szablon lokalnie:
azd init --template blob-storage-quickstart-dotnetZostanie wyświetlony monit o podanie następujących informacji:
- Nazwa środowiska: ta wartość jest używana jako prefiks dla wszystkich zasobów platformy Azure utworzonych przez interfejs wiersza polecenia dewelopera platformy Azure. Nazwa musi być unikatowa we wszystkich subskrypcjach platformy Azure i musi mieć długość od 3 do 24 znaków. Nazwa może zawierać tylko cyfry i małe litery.
Zaloguj się do platformy Azure:
azd auth loginAprowizuj i wdróż zasoby na platformie Azure:
azd upZostanie wyświetlony monit o podanie następujących informacji:
- Subskrypcja: Subskrypcja platformy Azure, do której są wdrażane Twoje zasoby.
- Lokalizacja: region świadczenia usługi Azure, w którym są wdrażane zasoby.
Ukończenie wdrożenia może potrwać kilka minut. Dane wyjściowe polecenia
azd upzawierają nazwę nowo utworzonego konta przechowywania, którego będziesz potrzebować później do uruchomienia kodu.
Uruchamianie przykładowego kodu
W tym momencie zasoby są wdrażane na platformie Azure, a projekt jest gotowy do uruchomienia. Wykonaj następujące kroki, aby zmienić nazwę konta magazynu w kodzie i uruchomić próbną aplikację konsolową.
-
Zaktualizuj nazwę konta magazynu: przejdź do
srckatalogu i edytujProgram.cs. Znajdź symbol zastępczy<storage-account-name>i zastąp go rzeczywistą nazwą konta magazynu utworzonego przez polecenieazd up. Zapisz zmiany. -
Uruchom projekt: jeśli używasz programu Visual Studio, naciśnij F5, aby skompilować i uruchomić kod oraz wchodzić w interakcje z aplikacją konsolową. Jeśli używasz interfejsu wiersza polecenia platformy .NET, przejdź do katalogu aplikacji, skompiluj projekt przy użyciu polecenia
dotnet buildi uruchom aplikację przy użyciu poleceniadotnet run. - Obserwuj wynik: Ta aplikacja tworzy plik testowy w lokalnym folderze danych i przesyła go do kontenera na koncie przechowywania. Przykład następnie wymienia obiekty blob w kontenerze i pobiera plik z nową nazwą, aby można było porównać stare i nowe pliki.
Aby dowiedzieć się więcej o sposobie działania przykładowego kodu, zobacz Przykłady kodu.
Po zakończeniu testowania kodu zobacz sekcję Czyszczenie zasobów , aby usunąć zasoby utworzone za azd up pomocą polecenia .
Model obiektów
Usługa Azure Blob Storage jest zoptymalizowana pod kątem przechowywania ogromnych ilości danych bez struktury. Dane bez struktury nie są zgodne z określonym modelem lub definicją danych, takimi jak dane tekstowe lub binarne. Magazyn obiektów blob oferuje trzy typy zasobów:
- Konto magazynu
- Kontener na koncie magazynowym
- Obiekt danych w kontenerze
Na poniższym diagramie przedstawiono relacje między tymi zasobami.
Użyj następujących klas platformy .NET, aby wchodzić w interakcje z tymi zasobami:
-
BlobServiceClient:
BlobServiceClientklasa umożliwia manipulowanie zasobami usługi Azure Storage i kontenerami obiektów blob. -
BlobContainerClient:
BlobContainerClientklasa umożliwia manipulowanie kontenerami usługi Azure Storage i ich obiektami blob. -
BlobClient:
BlobClientklasa umożliwia manipulowanie obiektami blob usługi Azure Storage.
Przykłady kodu
Przykładowe fragmenty kodu w poniższych sekcjach przedstawiają sposób wykonywania następujących zadań za pomocą biblioteki klienta usługi Azure Blob Storage dla platformy .NET:
- Uwierzytelnij się w Azure i autoryzuj dostęp do danych blob
- Tworzenie kontenera
- Załaduj obiekt blob do kontenera
- Lista obiektów blob w kontenerze
- Pobieranie blobu
- Usuwanie kontenera
Important
Upewnij się, że zainstalowano poprawne pakiety NuGet i dodano niezbędne dyrektywy using, aby przykłady kodu działały zgodnie z opisem w sekcji konfiguracja.
Note
Szablon Azure Developer CLI zawiera projekt z przykładowym kodem już gotowym. Poniższe przykłady zawierają szczegółowe informacje dotyczące każdej części przykładowego kodu. Szablon implementuje zalecaną metodę uwierzytelniania bez hasła zgodnie z opisem w sekcji Uwierzytelnianie na platformie Azure . Metoda ciągu połączenia jest pokazana jako alternatywa, ale nie jest używana w szablonie i nie jest zalecana do kodu produkcyjnego.
Uwierzytelnianie w Azure i autoryzacja dostępu do danych Blob
Żądania aplikacji do usługi Azure Blob Storage muszą być autoryzowane.
DefaultAzureCredential Użycie klasy udostępnionej przez bibliotekę klienta tożsamości platformy Azure jest zalecanym podejściem do implementowania połączeń bez hasła z usługami platformy Azure w kodzie, w tym usługi Blob Storage.
Możesz również autoryzować żądania do usługi Azure Blob Storage przy użyciu klucza dostępu do konta. Należy jednak zachować ostrożność przy użyciu tego podejścia. Deweloperzy muszą być sumienni, aby nigdy nie ujawniać klucza dostępu w niezabezpieczonej lokalizacji. Każdy, kto ma klucz dostępu, może autoryzować żądania dotyczące konta magazynowego i praktycznie ma dostęp do wszystkich danych.
DefaultAzureCredential oferuje ulepszone korzyści związane z zarządzaniem i zabezpieczeniami za pośrednictwem klucza konta, aby umożliwić uwierzytelnianie bez hasła. Obie opcje przedstawiono w poniższym przykładzie.
DefaultAzureCredential jest klasą dostarczaną przez bibliotekę Azure Identity dla platformy .NET, o której można dowiedzieć się więcej w sekcji Przegląd DefaultAzureCredential.
DefaultAzureCredential obsługuje wiele metod uwierzytelniania i określa, która metoda powinna być używana w czasie wykonywania. Takie podejście umożliwia aplikacji używanie różnych metod uwierzytelniania w różnych środowiskach (lokalnych i produkcyjnych) bez implementowania kodu specyficznego dla środowiska.
Kolejność i lokalizacje, w których DefaultAzureCredential szuka poświadczeń, można znaleźć w przeglądzie biblioteki Azure Identity.
Na przykład, Twoja aplikacja może uwierzytelniać się za pomocą poświadczeń logowania programu Visual Studio, gdy tworzysz lokalnie. Aplikacja może następnie użyć tożsamości zarządzanej po jej wdrożeniu na platformie Azure. Do tego przejścia nie są wymagane żadne zmiany kodu.
Przypisywanie ról do konta użytkownika usługi Microsoft Entra
Podczas tworzenia aplikacji lokalnie upewnij się, że konto użytkownika, które uzyskuje dostęp do danych obiektów blob, ma odpowiednie uprawnienia. Będziesz potrzebować Współautora danych obiektu Blob w usłudze Storage, aby odczytywać i zapisywać dane blob. Aby przypisać sobie tę rolę, musisz mieć przypisaną rolę Administratora dostępu użytkowników lub inną rolę obejmującą akcję Microsoft.Authorization/roleAssignments/write . Role RBAC platformy Azure można przypisać użytkownikowi przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell. Aby uzyskać więcej informacji na temat roli Współautor danych obiektu blob usługi Storage , zobacz Współautor danych obiektu blob usługi Storage. Aby uzyskać więcej informacji na temat dostępnych zakresów przypisań ról, zobacz Omówienie zakresu kontroli dostępu opartej na rolach platformy Azure.
W tym scenariuszu przypiszesz uprawnienia do Twojego konta użytkownika w zakresie konta magazynowego, aby postępować zgodnie z zasadą najniższych uprawnień. Ta praktyka zapewnia użytkownikom tylko minimalne wymagane uprawnienia i tworzy bezpieczniejsze środowiska produkcyjne.
W poniższym przykładzie do konta użytkownika zostanie przypisana rola współautora danych obiektu blob w usłudze Storage, która zapewnia zarówno dostęp do odczytu, jak i zapisu do danych obiektów blob na Twoim koncie magazynowym.
Important
W większości przypadków propagacja przypisania roli na platformie Azure potrwa minutę lub dwie, ale w rzadkich przypadkach może upłynąć do ośmiu minut. Jeśli podczas pierwszego uruchomienia kodu wystąpią błędy uwierzytelniania, zaczekaj chwilę i spróbuj ponownie.
W portalu Azure znajdź konto usługi Storage za pomocą głównego paska wyszukiwania lub lewego panelu nawigacyjnego.
Na stronie przeglądu konta przechowywania wybierz pozycję Kontrola dostępu (IAM) z menu po lewej stronie.
Na stronie Kontrola dostępu (IAM) wybierz kartę Przypisania ról.
Wybierz + Dodaj z górnego menu, a następnie Dodaj przypisanie roli z wyświetlonego menu rozwijanego.
Użyj pola wyszukiwania, aby filtrować wyniki do żądanej roli. W tym przykładzie wyszukaj pozycję Storage Blob Data Contributor i wybierz pasujący wynik, a następnie wybierz pozycję Dalej.
W obszarze Przypisz dostęp do wybierz pozycję Użytkownik, grupa lub jednostka główna usługi, a następnie wybierz pozycję + Wybierz członków.
W oknie dialogowym wyszukaj nazwę użytkownika firmy Microsoft Entra (zazwyczaj adres e-mail user@domain ), a następnie wybierz pozycję Wybierz w dolnej części okna dialogowego.
Wybierz pozycję Przejrzyj i przypisz , aby przejść do ostatniej strony, a następnie ponownie przejrzyj i przypisz, aby ukończyć proces.
Zaloguj się i połącz kod aplikacji z platformą Azure przy użyciu opcji DefaultAzureCredential
Dostęp do danych w koncie magazynowym można autoryzować, wykonując następujące czynności:
-
W przypadku programowania lokalnego upewnij się, że uwierzytelniasz się przy użyciu tego samego konta Microsoft Entra, do którego przypisano rolę. Możesz uwierzytelnić się za pomocą popularnych narzędzi programistycznych, takich jak interfejs wiersza polecenia platformy Azure lub program Azure PowerShell. Narzędzia programistyczne, za pomocą których można się uwierzytelniać, różnią się w zależności od języków programowania.
- "Azure CLI"
- w programie Visual Studio
- Visual Studio Code
- PowerShell
Zaloguj się do platformy Azure za pomocą interfejsu wiersza polecenia platformy Azure przy użyciu następującego polecenia:
az login -
Aby użyć
DefaultAzureCredential, dodaj pakiet Azure.Identity do aplikacji.- w programie Visual Studio
- .NET CLI (Interfejs wiersza polecenia .NET)
W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy węzeł Zależności projektu. Wybierz Zarządzaj pakietami NuGet.
W oknie, które się pojawi, wyszukaj ciąg Azure.Identity. Wybierz odpowiedni wynik, a następnie wybierz pozycję Zainstaluj.
Zaktualizuj kod Program.cs , aby był zgodny z poniższym przykładem. Gdy kod jest uruchamiany na lokalnej stacji roboczej podczas programowania, użyje poświadczeń dewelopera priorytetowego narzędzia, do którego logujesz się w celu uwierzytelnienia na platformie Azure, takiego jak interfejs wiersza polecenia platformy Azure lub program Visual Studio.
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());Pamiętaj, aby zaktualizować nazwę konta pamięci masowej w identyfikatorze URI
BlobServiceClient. Nazwę konta magazynu można znaleźć na stronie przeglądu portalu Azure.
Note
Po wdrożeniu na platformie Azure ten sam kod może służyć do autoryzowania żądań do usługi Azure Storage z aplikacji działającej na platformie Azure. Należy jednak włączyć tożsamość zarządzaną w aplikacji na platformie Azure. Następnie skonfiguruj konto magazynu, aby umożliwić tej tożsamości zarządzanej nawiązanie połączenia. Aby uzyskać szczegółowe instrukcje dotyczące konfigurowania tego połączenia między usługami platformy Azure, zobacz samouczek Uwierzytelnianie z aplikacji hostowanych na platformie Azure.
Tworzenie kontenera
Utwórz nowy kontener w swoim koncie magazynowym, wywołując metodę CreateBlobContainerAsync na obiekcie blobServiceClient. W tym przykładzie kod dołącza wartość identyfikatora GUID do nazwy kontenera, aby upewnić się, że jest on unikatowy.
Dodaj następujący kod na końcu Program.cs pliku:
// 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);
Aby dowiedzieć się więcej o tworzeniu kontenera i eksplorować więcej przykładów kodu, zobacz Tworzenie kontenera obiektów blob za pomocą platformy .NET.
Important
Nazwy kontenerów muszą być zapisane małymi literami. Aby uzyskać więcej informacji o nazewnictwie kontenerów i obiektów blob, zobacz temat Nazewnictwo i odwoływanie się do kontenerów, obiektów blob i metadanych.
Prześlij obiekt blob do kontenera
Prześlij obiekt blob do kontenera przy użyciu metody UploadAsync. Przykładowy kod tworzy plik tekstowy w lokalnym katalogu danych w celu przekazania do kontenera.
Dodaj następujący kod na końcu Program.cs pliku:
// 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);
Aby dowiedzieć się więcej na temat przekazywania obiektów blob i eksplorowania dodatkowych przykładów kodu, zobacz Przekazywanie obiektu blob przy użyciu platformy .NET.
Wyświetlanie listy obiektów blob w kontenerze
Wyświetl listę obiektów blob w kontenerze, wywołując metodę GetBlobsAsync .
Dodaj następujący kod na końcu Program.cs pliku:
Console.WriteLine("Listing blobs...");
// List all blobs in the container
await foreach (BlobItem blobItem in containerClient.GetBlobsAsync())
{
Console.WriteLine("\t" + blobItem.Name);
}
Aby dowiedzieć się więcej na temat wyświetlania listy obiektów blob i eksplorowania większej liczby przykładów kodu, zobacz Wyświetlanie listy obiektów blob za pomocą platformy .NET.
Pobierz blob
Pobierz wcześniej utworzony obiekt blob, wywołując metodę DownloadToAsync. Przykładowy kod dołącza ciąg "DOWNLOADED" do nazwy pliku, aby zobaczyć oba pliki w lokalnym systemie plików.
Dodaj następujący kod na końcu Program.cs pliku:
// 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);
Aby dowiedzieć się więcej na temat pobierania obiektów blob i eksplorowania dodatkowych przykładów kodu, zobacz Pobieranie obiektu blob za pomocą platformy .NET.
Usuwanie kontenera
Poniższy kod czyści zasoby utworzone przez aplikację przez usunięcie kontenera przy użyciu narzędzia DeleteAsync. Przykładowy kod usuwa również pliki lokalne utworzone przez aplikację.
Aplikacja wstrzymuje działanie, czekając na dane wejściowe użytkownika, wywołując Console.ReadLine, zanim usunie obiekt blob, kontener i pliki lokalne. Jest to duża szansa na sprawdzenie, czy zasoby zostały utworzone poprawnie, zanim zostaną usunięte.
Dodaj następujący kod na końcu Program.cs pliku:
// 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");
Aby dowiedzieć się więcej o usuwaniu kontenera i poznać więcej przykładów kodu, zobacz Usuwanie i przywracanie kontenera obiektów blob za pomocą platformy .NET.
Ukończony kod
Po wykonaniu tych kroków kod w Program.cs pliku powinien teraz wyglądać podobnie do następującego:
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");
Uruchamianie kodu
Ta aplikacja tworzy plik testowy w lokalnym folderze danych i przekazuje go do usługi Blob Storage. Przykład następnie wymienia obiekty blob w kontenerze i pobiera plik z nową nazwą, aby można było porównać stare i nowe pliki.
Jeśli używasz programu Visual Studio, naciśnij F5, aby skompilować i uruchomić kod oraz wchodzić w interakcję z aplikacją konsolową. Jeśli używasz interfejsu wiersza polecenia platformy .NET, przejdź do katalogu aplikacji, a następnie skompiluj i uruchom aplikację.
dotnet build
dotnet run
Dane wyjściowe aplikacji są podobne do poniższego przykładu (pominięte wartości identyfikatora GUID w celu zapewnienia czytelności):
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
Przed rozpoczęciem procesu czyszczenia sprawdź folder danych pod kątem dwóch plików. Można je otworzyć i obserwować, że są identyczne.
Uprzątnij zasoby
Po zweryfikowaniu plików i zakończeniu testowania naciśnij Enter , aby usunąć pliki testowe wraz z kontenerem utworzonym na koncie magazynu. Możesz również użyć interfejsu wiersza polecenia platformy Azure, aby usunąć zasoby.
Po zakończeniu pracy z przewodnikiem "Quickstart" możesz wyczyścić utworzone zasoby, uruchamiając następujące polecenie:
azd down
Zostanie wyświetlony monit o potwierdzenie usunięcia zasobów. Wprowadź , y aby potwierdzić.