Zelfstudie: Aan de slag met de Azure WebJobs SDK voor gebeurtenisgestuurde achtergrondverwerking
Ga aan de slag met de Azure WebJobs SDK voor Azure App Service om uw web-apps in staat te stellen achtergrondtaken, geplande taken uit te voeren en te reageren op gebeurtenissen.
Gebruik Visual Studio 2022 om een .NET Core-console-app te maken die gebruikmaakt van de WebJobs SDK om te reageren op Azure Storage Queue-berichten, het project lokaal uit te voeren en ten slotte te implementeren in Azure.
In deze zelfstudie leert u het volgende:
- Een console-app maken
- Een functie toevoegen
- Lokaal testen
- Implementeren op Azure
- Application Insights-logboekregistratie inschakelen
- Invoer-/uitvoerbindingen toevoegen
Vereisten
Visual Studio 2022 met de Azure-ontwikkelworkload . Installeer Visual Studio 2022.
Een Azure-account met een actief abonnement. Gratis een account maken
Een console-app maken
In deze sectie begint u met het maken van een project in Visual Studio 2022. Vervolgens voegt u hulpprogramma's toe voor Azure-ontwikkeling, het publiceren van code en functies die luisteren naar triggers en functies aanroepen. Ten slotte stelt u consolelogboekregistratie in waarmee een verouderd bewakingsprogramma wordt uitgeschakeld en een consoleprovider met standaardfiltering wordt ingeschakeld.
Notitie
De procedures in dit artikel zijn geverifieerd voor het maken van een .NET Core-console-app die wordt uitgevoerd op .NET 6.0.
Een project maken
Selecteer in Visual Studio Bestand>Nieuw>Project.
Selecteer onder Een nieuw project makende optie Consoletoepassing (C#) en selecteer vervolgens Volgende.
Geef het project onder Uw nieuwe project configureren de naam WebJobsSDKSampleen selecteer volgende.
Kies uw doelframework en selecteer Maken. Deze zelfstudie is geverifieerd met .NET 6.0.
NuGet-pakketten voor WebJobs installeren
Installeer het nieuwste WebJobs NuGet-pakket. Dit pakket bevat Microsoft.Azure.WebJobs (WebJobs SDK), waarmee u uw functiecode kunt publiceren naar WebJobs in Azure App Service.
Download de nieuwste stabiele 4.x-versie van het NuGet-pakket Microsoft.Azure.WebJobs.Extensions.
Ga in Visual Studio naar Hulpprogramma's>NuGet Package Manager.
Selecteer Package Manager Console. U ziet een lijst met NuGet-cmdlets, een koppeling naar documentatie en een
PM>
toegangspunt.Vervang in de volgende opdracht door
<4_X_VERSION>
het huidige versienummer dat u in stap 1 hebt gevonden.Install-Package Microsoft.Azure.WebJobs.Extensions -version <4_X_VERSION>
Voer de opdracht uit in de Package Manager-console. De lijst met extensies wordt weergegeven en wordt automatisch geïnstalleerd.
De host maken
De host is de runtimecontainer voor functies die luistert naar triggers en functies aanroept. Met de volgende stappen maakt u een host die IHost
implementeert. Dit is de algemene host in ASP.NET Core.
Selecteer het tabblad Program.cs , verwijder de bestaande inhoud en voeg deze
using
instructies toe:using System.Threading.Tasks; using Microsoft.Extensions.Hosting;
Voeg ook onder Program.cs de volgende code toe:
namespace WebJobsSDKSample { class Program { static async Task Main() { var builder = new HostBuilder(); builder.ConfigureWebJobs(b => { b.AddAzureStorageCoreServices(); }); var host = builder.Build(); using (host) { await host.RunAsync(); } } } }
In ASP.NET Core worden hostconfiguraties ingesteld door methoden aan te roepen op het HostBuilder
exemplaar. Zie .NET Generic Host voor meer informatie. De ConfigureWebJobs
extensiemethode initialiseert de WebJobs-host. Initialiseer in ConfigureWebJobs
specifieke bindingsextensies, zoals de opslagbindingsextensie, en stel eigenschappen van deze extensies in.
Consolelogboekregistratie inschakelen
Consolelogboekregistratie instellen die gebruikmaakt van het framework voor ASP.NET Core logboekregistratie. Dit framework, Microsoft.Extensions.Logging, bevat een API die werkt met verschillende ingebouwde en externe providers voor logboekregistratie.
Download de nieuwste stabiele versie van het
Microsoft.Extensions.Logging.Console
NuGet-pakket, waaronderMicrosoft.Extensions.Logging
.Vervang in de volgende opdracht door
<6_X_VERSION>
het huidige versienummer dat u in stap 1 hebt gevonden. Elk type NuGet-pakket heeft een uniek versienummer.Install-Package Microsoft.Extensions.Logging.Console -version <6_X_VERSION>
Vul in de Package Manager-console het huidige versienummer in en voer de opdracht uit. De lijst met extensies wordt weergegeven en wordt automatisch geïnstalleerd.
Voeg onder het tabblad Program.cs deze
using
instructie toe:using Microsoft.Extensions.Logging;
Ga verder onder Program.cs en voeg de
ConfigureLogging
methode toe aanHostBuilder
, vóór deBuild
opdracht . DeAddConsole
methode voegt consolelogboekregistratie toe aan de configuratie.builder.ConfigureLogging((context, b) => { b.AddConsole(); });
De
Main
methode ziet er nu als volgt uit:static async Task Main() { var builder = new HostBuilder(); builder.ConfigureWebJobs(b => { b.AddAzureStorageCoreServices(); }); builder.ConfigureLogging((context, b) => { b.AddConsole(); }); var host = builder.Build(); using (host) { await host.RunAsync(); } }
Met deze toevoeging worden de volgende wijzigingen aangebracht:
- Dashboardlogboekregistratie uitschakelen. Het dashboard is een verouderd bewakingsprogramma en dashboardlogboekregistratie wordt niet aanbevolen voor productiescenario's met een hoge doorvoer.
- Hiermee voegt u de consoleprovider toe met standaardfiltering.
U kunt nu een functie toevoegen die wordt geactiveerd door berichten die binnenkomen in een Azure Storage-wachtrij.
Een functie toevoegen
Een functie is een code-eenheid die volgens een schema wordt uitgevoerd, wordt geactiveerd op basis van gebeurtenissen of die op aanvraag wordt uitgevoerd. Een trigger luistert naar een service-gebeurtenis. In de context van de WebJobs SDK verwijst geactiveerd niet naar de implementatiemodus. Gebeurtenisgestuurde of geplande webtaken die zijn gemaakt met behulp van de SDK, moeten altijd worden geïmplementeerd als continue webtaken waarvoor 'Altijd aan' is ingeschakeld.
In deze sectie maakt u een functie die wordt geactiveerd door berichten in een Azure Storage-wachtrij. Eerst moet u een bindingsextensie toevoegen om verbinding te maken met Azure Storage.
De Storage-bindingextensie installeren
Vanaf versie 3 van de WebJobs SDK moet u een afzonderlijk opslagbindingsuitbreidingspakket installeren om verbinding te maken met Azure Storage-services.
Notitie
Vanaf 5.x is Microsoft.Azure.WebJobs.Extensions.Storage gesplitst per opslagservice en is de AddAzureStorage()
extensiemethode per servicetype gemigreerd.
Download de nieuwste stabiele versie van het NuGet-pakket Microsoft.Azure.WebJobs.Extensions.Storage , versie 5.x.
Vervang in de volgende opdracht door
<5_X_VERSION>
het huidige versienummer dat u in stap 1 hebt gevonden. Elk type NuGet-pakket heeft een uniek versienummer.Install-Package Microsoft.Azure.WebJobs.Extensions.Storage -Version <5_X_VERSION>
Voer in de Package Manager-console de opdracht uit met het huidige versienummer op het
PM>
toegangspunt.Ga verder in Program.cs en voeg in de
ConfigureWebJobs
extensiemethode deAddAzureStorageQueues
methode toe aan hetHostBuilder
exemplaar (vóór deBuild
opdracht) om de Storage-extensie te initialiseren. Op dit moment ziet deConfigureWebJobs
methode er als volgt uit:builder.ConfigureWebJobs(b => { b.AddAzureStorageCoreServices(); b.AddAzureStorageQueues(); });
Voeg de volgende code toe aan de
Main
methode nadat debuilder
is geïnstantieerd:builder.UseEnvironment(EnvironmentName.Development);
Als u wordt uitgevoerd in de ontwikkelingsmodus , vermindert u de exponentieel uitstel van polling in de wachtrij. Dit kan de hoeveelheid tijd die nodig is voor de runtime om het bericht te vinden en de functie aan te roepen aanzienlijk vertragen. U moet deze coderegel verwijderen of overschakelen naar
Production
wanneer u klaar bent met ontwikkelen en testen.De
Main
methode moet er nu uitzien zoals in het volgende voorbeeld:static async Task Main() { var builder = new HostBuilder(); builder.UseEnvironment(EnvironmentName.Development); builder.ConfigureLogging((context, b) => { b.AddConsole(); }); builder.ConfigureWebJobs(b => { b.AddAzureStorageCoreServices(); b.AddAzureStorageQueues(); }); var host = builder.Build(); using (host) { await host.RunAsync(); } }
Een door de wachtrij geactiveerde functie maken
Het QueueTrigger
kenmerk vertelt de runtime om deze functie aan te roepen wanneer een nieuw bericht wordt geschreven in een Azure Storage-wachtrij met de naam queue
. De inhoud van het wachtrijbericht wordt opgegeven aan de methodecode in de message
parameter . De hoofdtekst van de methode is waar u de triggergegevens verwerkt. In dit voorbeeld registreert de code alleen het bericht.
Klik in Solution Explorer met de rechtermuisknop op het project, selecteerNieuw itemtoevoegen> en selecteer vervolgens Klasse.
Geef het nieuwe C#-klassebestand de naam Functions.cs en selecteer Toevoegen.
Vervang in Functions.cs de gegenereerde sjabloon door de volgende code:
using Microsoft.Azure.WebJobs; using Microsoft.Extensions.Logging; namespace WebJobsSDKSample { public class Functions { public static void ProcessQueueMessage([QueueTrigger("queue")] string message, ILogger logger) { logger.LogInformation(message); } } }
U moet de klasse Functions markeren als
public static
om de runtime toegang te geven tot de methode en deze uit te voeren. Wanneer in het bovenstaande codevoorbeeld een bericht wordt toegevoegd aan een wachtrij met de naamqueue
, wordt de functie uitgevoerd en wordt demessage
tekenreeks naar de logboeken geschreven. De wachtrij die wordt bewaakt, bevindt zich in het standaard Azure Storage-account, dat u vervolgens maakt.
De message
parameter hoeft geen tekenreeks te zijn. U kunt ook binden aan een JSON-object, een bytematrix of een CloudQueueMessage-object . Zie Wachtrijtriggergebruik. Elk bindingstype (zoals wachtrijen, blobs of tabellen) heeft een andere set parametertypen waaraan u kunt binden.
Een Azure-opslagaccount maken
De Azure Storage Emulator die lokaal wordt uitgevoerd, beschikt niet over alle functies die de WebJobs SDK nodig heeft. U maakt een opslagaccount in Azure en configureert het project voor gebruik.
Zie Een Azure Storage-account maken voor meer informatie over het maken van een v2-opslagaccount voor algemeen gebruik.
Uw connection string zoeken en kopiëren
Er is een connection string vereist om opslag te configureren. Bewaar deze connection string voor de volgende stappen.
Navigeer in de Azure Portal naar uw opslagaccount en selecteer Instellingen.
Selecteer in Instellingende optie Toegangssleutels.
Selecteer voor de verbindingsreeks onder key1 het pictogram Kopiëren naar klembord .
Opslag configureren om lokaal te worden uitgevoerd
De WebJobs SDK zoekt naar de opslag connection string in de toepassingsinstellingen in Azure. Wanneer u lokaal uitvoert, wordt naar deze waarde gezocht in het lokale configuratiebestand of in omgevingsvariabelen.
Klik met de rechtermuisknop op het project, selecteerNieuw itemtoevoegen>, selecteer JavaScript JSON-configuratiebestand, geef het nieuwe bestand de naam appsettings.json en selecteer Toevoegen.
Voeg in het nieuwe bestand een
AzureWebJobsStorage
veld toe, zoals in het volgende voorbeeld:{ "AzureWebJobsStorage": "{storage connection string}" }
Vervang {storage connection string} door de connection string die u eerder hebt gekopieerd.
Selecteer het bestand appsettings.json in Solution Explorer en stel in het venster Eigenschappen de actie Kopiëren naar uitvoermap in op Kopiëren indien nieuwer.
Omdat dit bestand een connection string geheim bevat, moet u het bestand niet opslaan in een externe codeopslagplaats. Nadat u uw project naar Azure hebt gepubliceerd, kunt u dezelfde connection string app-instelling toevoegen in uw app in Azure App Service.
Lokaal testen
Bouw en voer het project lokaal uit en maak een berichtenwachtrij om de functie te activeren.
Ga in de Azure Portal naar uw opslagaccount en selecteer het tabblad Wachtrijen (1). Selecteer + Wachtrij (2) en voer wachtrij in als wachtrijnaam (3). Selecteer vervolgens OK (4).
Klik op de nieuwe wachtrij en selecteer Bericht toevoegen.
Voer in het dialoogvenster Bericht toevoegenHallo wereld! in als berichttekst en selecteer vervolgens OK. Er staat nu een bericht in de wachtrij.
Druk op Ctrl+F5 om het project uit te voeren.
In de console ziet u dat de runtime uw functie heeft gevonden. Omdat u het
QueueTrigger
kenmerk in deProcessQueueMessage
functie hebt gebruikt, luistert de WebJobs-runtime naar berichten in de wachtrij met de naamqueue
. Wanneer er een nieuw bericht in deze wachtrij wordt gevonden, roept de runtime de functie aan, waarbij de waarde van de berichtreeks wordt doorgegeven.Terug naar het venster Wachtrij en vernieuw het. Het bericht is verdwenen, omdat het is verwerkt door uw functie die lokaal wordt uitgevoerd.
Sluit het consolevenster.
Het is nu tijd om uw WebJobs SDK-project naar Azure te publiceren.
Implementeren op Azure
Tijdens de implementatie maakt u een App Service-exemplaar waarin u uw functies uitvoert. Wanneer u een .NET-console-app publiceert naar App Service in Azure, wordt deze automatisch uitgevoerd als een webtaak. Zie WebJobs ontwikkelen en implementeren met Visual Studio voor meer informatie over publiceren.
Azure-resources maken
Klik in Solution Explorer met de rechtermuisknop op het project en selecteer Publiceren.
Selecteer in het dialoogvenster Publiceren de optie Azure als doel en selecteer vervolgens Volgende.
Selecteer Azure WebJobs voor Specifiek doel en selecteer vervolgens Volgende.
Selecteer hierboven App Service exemplaren de plusknop (+) om een nieuwe Azure-webtaak te maken.
Gebruik in het dialoogvenster App Service (Windows) de hostinginstellingen in de volgende tabel.
Instelling Voorgestelde waarde Beschrijving Naam Wereldwijd unieke naam Naam waarmee uw nieuwe functie-app uniek wordt aangeduid. Abonnement Kies uw abonnement Het te gebruiken Azure-abonnement. Resourcegroep myResourceGroup Naam van de resourcegroep waarin uw functie-app moet worden gemaakt. Kies Nieuw om een nieuwe resourcegroep te maken. Hostingabonnement App Service-plan Een App Service-plan geeft de locatie, de grootte en de functies van de webserverfarm aan die als host fungeert voor uw app. U kunt geld besparen bij het hosten van meerdere apps door de web-apps te configureren voor het delen van één App Service-plan. App Service plannen definiëren de regio, de grootte van het exemplaar, het schaalaantal en de SKU (Gratis, Gedeeld, Basic, Standard of Premium). Kies Nieuw om een nieuw App Service-plan te maken. De Gratis- en Basic-lagen bieden geen ondersteuning voor de optie AlwaysOn om ervoor te zorgen dat uw site continu blijft werken. Selecteer Maken om een webtaak en gerelateerde resources in Azure te maken met deze instellingen en uw projectcode te implementeren.
Selecteer Voltooien om terug te keren naar de pagina Publiceren .
AlwaysOn inschakelen
Voor een continue webtaak moet u de instelling Altijd aan op de site inschakelen, zodat uw webtaken correct worden uitgevoerd. Als u AlwaysOn niet inschakelt, wordt de runtime na een paar minuten inactiviteit inactief.
Selecteer op de pagina Publiceren de drie puntjes boven Hosting om sectieacties voor hostingprofielen weer te geven en kies Openen in Azure Portal.
Kies onder Instellingen de optieAlgemene instellingen voor configuratie>, stel Altijd aan in op Aan en selecteer vervolgens Opslaan en doorgaan om de site opnieuw op te starten.
Het project publiceren
Nu de web-app is gemaakt in Azure, is het tijd om het WebJobs-project te publiceren.
Selecteer op de pagina Publiceren onder Hosting de knop Bewerken, wijzig het webtaaktype in
Continuous
en selecteer Opslaan. Dit zorgt ervoor dat de webtaak wordt uitgevoerd wanneer berichten aan de wachtrij worden toegevoegd. Geactiveerde webtaken worden doorgaans alleen gebruikt voor handmatige webhooks.Selecteer de knop Publiceren in de rechterbovenhoek van de pagina Publiceren . Wanneer de bewerking is voltooid, wordt uw webtaak uitgevoerd in Azure.
Een app-instelling voor een opslagverbinding maken
U moet dezelfde opslaginstelling connection string maken in Azure die u lokaal hebt gebruikt in het configuratiebestand appsettings.json. Hierdoor kunt u de connection string en
Selecteer op de pagina Profiel publiceren de drie puntjes boven Hosting om sectieacties voor hostingprofielen weer te geven en kies Azure App Service-instellingen beheren.
Kies in Toepassingsinstellingende optie + Instelling toevoegen.
Typ in Naam van nieuwe app-instelling
AzureWebJobsStorage
en selecteer OK.Plak in Extern de connection string uit uw lokale instelling en selecteer OK.
De connection string is nu ingesteld in uw app in Azure.
De functie activeren in Azure
Zorg ervoor dat u niet lokaal wordt uitgevoerd. Sluit het consolevenster als dit nog steeds is geopend. Anders kan het lokale exemplaar de eerste zijn die wachtrijberichten verwerkt die u maakt.
Voeg op de pagina Wachtrij in Visual Studio een bericht toe aan de wachtrij zoals voorheen.
Vernieuw de pagina Wachtrij en het nieuwe bericht verdwijnt omdat het is verwerkt door de functie die wordt uitgevoerd in Azure.
Application Insights-logboekregistratie inschakelen
Wanneer de webtaak wordt uitgevoerd in Azure, kunt u de uitvoering van de functie niet controleren door console-uitvoer weer te geven. Als u uw webtaak wilt kunnen bewaken, moet u een gekoppeld Application Insights-exemplaar maken wanneer u uw project publiceert.
Een Application Insights-exemplaar maken
Selecteer op de pagina Profiel publiceren de drie puntjes boven Hosting om sectieacties voor hostingprofiel weer te geven en kies Openen in Azure Portal.
Kies in de web-app onder Instellingende optie Application Insights en selecteer Application Insights inschakelen.
Controleer de gegenereerde resourcenaam voor het exemplaar en de Locatie en selecteer Toepassen.
Kies onder Instellingende optie Configuratie en controleer of er een nieuwe
APPINSIGHTS_INSTRUMENTATIONKEY
is gemaakt. Deze sleutel wordt gebruikt om uw webtaakexemplaar te verbinden met Application Insights.
Als u wilt profiteren van Application Insights-logboekregistratie , moet u ook uw logboekcode bijwerken.
De Application Insights-extensie installeren
Download de nieuwste stabiele versie van het NuGet-pakket Microsoft.Azure.WebJobs.Logging.ApplicationInsights , versie 3.x.
Vervang in de volgende opdracht door
<3_X_VERSION>
het huidige versienummer dat u in stap 1 hebt gevonden. Elk type NuGet-pakket heeft een uniek versienummer.Install-Package Microsoft.Azure.WebJobs.Logging.ApplicationInsights -Version <3_X_VERSION>
Voer in de Package Manager-console de opdracht uit met het huidige versienummer op het
PM>
toegangspunt.
De Application Insights-provider voor logboekregistratie initialiseren
Open Program.cs en voeg de volgende initialisatiefunctie toe in de ConfigureLogging
na de aanroep naar AddConsole
:
// If the key exists in settings, use it to enable Application Insights.
string instrumentationKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
if (!string.IsNullOrEmpty(instrumentationKey))
{
b.AddApplicationInsightsWebJobs(o => o.InstrumentationKey = instrumentationKey);
}
De Main
code van de methode moet er nu uitzien zoals in het volgende voorbeeld:
static async Task Main()
{
var builder = new HostBuilder();
builder.UseEnvironment(EnvironmentName.Development);
builder.ConfigureWebJobs(b =>
{
b.AddAzureStorageCoreServices();
b.AddAzureStorage();
});
builder.ConfigureLogging((context, b) =>
{
b.AddConsole();
// If the key exists in settings, use it to enable Application Insights.
string instrumentationKey = context.Configuration["APPINSIGHTS_INSTRUMENTATIONKEY"];
if (!string.IsNullOrEmpty(instrumentationKey))
{
b.AddApplicationInsightsWebJobs(o => o.InstrumentationKey = instrumentationKey);
}
});
var host = builder.Build();
using (host)
{
await host.RunAsync();
}
}
Hiermee wordt de Application Insights-logboekregistratieprovider geïnitialiseerd met standaardfilters. Wanneer u lokaal wordt uitgevoerd, worden alle gegevens en logboeken op een hoger niveau geschreven naar zowel de console als Application Insights.
Het project opnieuw publiceren en de functie opnieuw activeren
Klik in Solution Explorer met de rechtermuisknop op het project en selecteer Publiceren.
Gebruik net als voorheen de Azure Portal om een wachtrijbericht te maken zoals u eerder hebt gedaan, maar voer Hello App Insights! in als de berichttekst.
Selecteer op de pagina Profiel publiceren de drie puntjes boven Hosting om sectieacties voor hostingprofiel weer te geven en kies Openen in Azure Portal.
Kies in de web-app onder Instellingende optie Application Insights en selecteer Application Insights-gegevens weergeven.
Selecteer Zoeken en selecteer vervolgens Alle gegevens in de afgelopen 24 uur weergeven.
Als u het bericht Hello App Insights! niet ziet, selecteert u periodiek vernieuwen gedurende enkele minuten. Logboeken worden niet onmiddellijk weergegeven, omdat het even duurt voordat de Application Insights-client de logboeken heeft leeggemaakt die worden verwerkt.
Invoer-/uitvoerbindingen toevoegen
Bindingen vereenvoudigen code waarmee gegevens worden gelezen en geschreven. Invoerbindingen vereenvoudigen code die gegevens leest. Uitvoerbindingen vereenvoudigen code waarmee gegevens worden geschreven.
Bindingen toevoegen
Invoerbindingen vereenvoudigen code die gegevens leest. In dit voorbeeld is het wachtrijbericht de naam van een blob, die u gebruikt om een blob te zoeken en te lezen in Azure Storage. Vervolgens gebruikt u uitvoerbindingen om een kopie van het bestand naar dezelfde container te schrijven.
Voeg in Functions.cs een
using
toe:using System.IO;
Vervang de
ProcessQueueMessage
-methode door de volgende code:public static void ProcessQueueMessage( [QueueTrigger("queue")] string message, [Blob("container/{queueTrigger}", FileAccess.Read)] Stream myBlob, [Blob("container/copy-{queueTrigger}", FileAccess.Write)] Stream outputBlob, ILogger logger) { logger.LogInformation($"Blob name:{message} \n Size: {myBlob.Length} bytes"); myBlob.CopyTo(outputBlob); }
In deze code
queueTrigger
is een bindingsexpressie, wat betekent dat deze tijdens runtime wordt omgezet in een andere waarde. Tijdens runtime bevat het de inhoud van het wachtrijbericht.Deze code maakt gebruik van uitvoerbindingen om een kopie te maken van het bestand dat wordt geïdentificeerd door het wachtrijbericht. De kopie van het bestand wordt voorafgegaan door copy-.
Voeg in Program.cs in de
ConfigureWebJobs
extensiemethode deAddAzureStorageBlobs
methode toe aan hetHostBuilder
exemplaar (vóór deBuild
opdracht) om de Storage-extensie te initialiseren. Op dit moment ziet deConfigureWebJobs
methode er als volgt uit:builder.ConfigureWebJobs(b => { b.AddAzureStorageCoreServices(); b.AddAzureStorageQueues(); b.AddAzureStorageBlobs(); });
Maak een blobcontainer in uw opslagaccount.
a. Ga in de Azure Portal naar het tabblad Containers onder Gegevensopslag en selecteer + Container
b. Voer in het dialoogvenster Nieuwe containercontainer in als containernaam en selecteer vervolgens Maken.
Upload het bestand Program.cs naar de blobcontainer. (Dit bestand wordt hier als voorbeeld gebruikt. U kunt een tekstbestand uploaden en een wachtrijbericht maken met de naam van het bestand.)
a. Selecteer de nieuwe container die u hebt gemaakt
b. Selecteer de knop Uploaden.
c. Zoek en selecteer Program.cs en selecteer vervolgens OK.
Het project opnieuw publiceren
Klik in Solution Explorer met de rechtermuisknop op het project en selecteer Publiceren.
Controleer in het dialoogvenster Publiceren of het huidige profiel is geselecteerd en selecteer vervolgens Publiceren. De resultaten van de publicatie worden gedetailleerd beschreven in het venster Uitvoer .
Maak een wachtrijbericht in de wachtrij die u eerder hebt gemaakt, met Program.cs als tekst van het bericht.
Een kopie van het bestand, copy-Program.cs, wordt weergegeven in de blobcontainer.
Volgende stappen
In deze zelfstudie hebt u laten zien hoe u een WebJobs SDK 3.x-project maakt, uitvoert en implementeert.