File: Program.cs
Web Access
Project: src\playground\AzureVirtualNetworkEndToEnd\AzureVirtualNetworkEndToEnd.ApiService\AzureVirtualNetworkEndToEnd.ApiService.csproj (AzureVirtualNetworkEndToEnd.ApiService)
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
 
using Azure.Storage.Blobs;
using Azure.Storage.Queues;
 
var builder = WebApplication.CreateBuilder(args);
 
builder.AddServiceDefaults();
 
builder.AddAzureBlobContainerClient("mycontainer");
 
builder.AddKeyedAzureQueue("myqueue");
 
var app = builder.Build();
 
app.MapDefaultEndpoints();
 
app.MapGet("/", async (BlobContainerClient containerClient, [FromKeyedServices("myqueue")] QueueClient queue) =>
{
    var blobNames = new List<string>();
    var blobNameAndContent = Guid.NewGuid().ToString();
 
    await containerClient.UploadBlobAsync(blobNameAndContent, new BinaryData(blobNameAndContent));
 
    await ReadBlobsAsync(containerClient, blobNames);
 
    await queue.SendMessageAsync("Hello, world!");
 
    return blobNames;
});
 
app.Run();
 
static async Task ReadBlobsAsync(BlobContainerClient containerClient, List<string> output)
{
    output.Add(containerClient.Uri.ToString());
    var blobs = containerClient.GetBlobsAsync();
    await foreach (var blob in blobs)
    {
        output.Add(blob.Name);
    }
}