Tutorial: Erstellen einer ASP.NET-App in Azure mit SQL-DatenbankTutorial: Build an ASP.NET app in Azure with SQL Database

Von Azure App Service wird ein hochgradig skalierbarer Webhostingdienst mit Self-Patching bereitgestellt.Azure App Service provides a highly scalable, self-patching web hosting service. In diesem Tutorial wird veranschaulicht, wie Sie eine datengesteuerte ASP.NET-App in App Service bereitstellen und dafür eine Verbindung mit Azure SQL-Datenbank herstellen.This tutorial shows you how to deploy a data-driven ASP.NET app in App Service and connect it to Azure SQL Database. Nach Abschluss verfügen Sie über eine ASP.NET-App, die in Azure ausgeführt wird und mit SQL-Datenbank verbunden ist.When you're finished, you have an ASP.NET app running in Azure and connected to SQL Database.

Veröffentlichte ASP.NET-Anwendung in Azure App Service

In diesem Tutorial lernen Sie Folgendes:In this tutorial, you learn how to:

  • Erstellen einer SQL-Datenbank in AzureCreate a SQL Database in Azure
  • Herstellen einer Verbindung mit SQL-Datenbank für eine ASP.NET-AppConnect an ASP.NET app to SQL Database
  • Bereitstellen der Anwendung in AzureDeploy the app to Azure
  • Aktualisieren des Datenmodells und erneutes Bereitstellen der AppUpdate the data model and redeploy the app
  • Streamen von Protokollen von Azure auf Ihr TerminalStream logs from Azure to your terminal
  • Verwalten der App im Azure-PortalManage the app in the Azure portal

Wenn Sie kein Azure-Abonnement besitzen, erstellen Sie ein kostenloses Konto, bevor Sie beginnen.If you don't have an Azure subscription, create a free account before you begin.

VoraussetzungenPrerequisites

Für dieses Tutorial benötigen Sie Folgendes:To complete this tutorial:

Installieren Sie Visual Studio 2019 mit der Workload ASP.NET und Webentwicklung.Install Visual Studio 2019 with the ASP.NET and web development workload.

Falls Sie Visual Studio bereits installiert haben, können Sie die Workloads in Visual Studio hinzufügen, indem Sie auf Extras > Get Tools and Features (Tools und Features abrufen) klicken.If you've installed Visual Studio already, add the workloads in Visual Studio by clicking Tools > Get Tools and Features.

Herunterladen des BeispielsDownload the sample

Das Beispielprojekt enthält eine einfache ASP.NET MVC-CRUD-App (Create-Read-Update-Delete, Erstellen-Lesen-Aktualisieren-Löschen), die auf Entity Framework Code First basiert.The sample project contains a basic ASP.NET MVC create-read-update-delete (CRUD) app using Entity Framework Code First.

Ausführen der AppRun the app

Öffnen Sie die Datei dotnet-sqldb-tutorial-master/DotNetAppSqlDb.sln in Visual Studio.Open the dotnet-sqldb-tutorial-master/DotNetAppSqlDb.sln file in Visual Studio.

Geben Sie Ctrl+F5 ein, um die App ohne Debuggen auszuführen.Type Ctrl+F5 to run the app without debugging. Die App wird im Standardbrowser angezeigt.The app is displayed in your default browser. Wählen Sie den Link Neu erstellen, und erstellen Sie einige Aufgaben-Elemente.Select the Create New link and create a couple to-do items.

Dialogfeld "Neues ASP.NET-Projekt"

Testen Sie die Links Bearbeiten, Details und Löschen.Test the Edit, Details, and Delete links.

Die App nutzt einen Datenbankkontext, um die Verbindung mit der Datenbank herzustellen.The app uses a database context to connect with the database. In diesem Beispiel wird im Datenbankkontext eine Verbindungszeichenfolge mit dem Namen MyDbConnection verwendet.In this sample, the database context uses a connection string named MyDbConnection. Die Verbindungszeichenfolge wird in der Datei Web.config festgelegt, und die Datei Models/MyDatabaseContext.cs enthält einen Verweis darauf.The connection string is set in the Web.config file and referenced in the Models/MyDatabaseContext.cs file. Der Name der Verbindungszeichenfolge wird später im Tutorial verwendet, um die Azure-App mit einer Azure SQL-Datenbank zu verbinden.The connection string name is used later in the tutorial to connect the Azure app to an Azure SQL Database.

Veröffentlichen in Azure mit SQL-DatenbankPublish to Azure with SQL Database

Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt DotNetAppSqlDb, und wählen Sie Veröffentlichen aus.In the Solution Explorer, right-click your DotNetAppSqlDb project and select Publish.

Veröffentlichen über den Projektmappen-Explorer

Vergewissern Sie sich, dass Microsoft Azure App Service ausgewählt ist, und klicken Sie auf Veröffentlichen.Make sure that Microsoft Azure App Service is selected and click Publish.

Veröffentlichen über die Projektübersichtsseite

Beim Veröffentlichen wird das Dialogfeld App Service erstellen geöffnet, das Sie beim Erstellen sämtlicher Azure-Ressourcen unterstützt, die zum Ausführen Ihrer ASP.NET-App in Azure erforderlich sind.Publishing opens the Create App Service dialog, which helps you create all the Azure resources you need to run your ASP.NET app in Azure.

Anmelden bei AzureSign in to Azure

Klicken Sie im Dialogfeld App Service erstellen auf Konto hinzufügen, und melden Sie sich bei Ihrem Azure-Abonnement an.In the Create App Service dialog, click Add an account, and then sign in to your Azure subscription. Falls Sie bereits bei einem Microsoft-Konto angemeldet sind, vergewissern Sie sich, dass dieses Konto Ihr Azure-Abonnement enthält.If you're already signed into a Microsoft account, make sure that account holds your Azure subscription. Wenn das Microsoft-Konto, bei dem Sie angemeldet sind, nicht Ihr Azure-Abonnement enthält, klicken Sie darauf, um das korrekte Konto hinzuzufügen.If the signed-in Microsoft account doesn't have your Azure subscription, click it to add the correct account.

Hinweis

Wenn Sie bereits angemeldet sind, wählen Sie noch nicht Erstellen aus.If you're already signed in, don't select Create yet.

Anmelden bei Azure

Konfigurieren des Web-App-NamensConfigure the web app name

Sie können den generierten Web-App-Namen beibehalten oder in einen anderen eindeutigen Namen ändern (gültige Zeichen a-z, 0-9 und -).You can keep the generated web app name, or change it to another unique name (valid characters are a-z, 0-9, and -). Der Web-App-Name wird als Teil der Standard-URL für Ihre App verwendet (<app_name>.azurewebsites.net, wobei <app_name> Ihr Web-App-Name ist).The web app name is used as part of the default URL for your app (<app_name>.azurewebsites.net, where <app_name> is your web app name). Der Web-App-Name muss in Azure über alle Apps hinweg eindeutig sein.The web app name needs to be unique across all apps in Azure.

Dialogfeld „App Service erstellen“

Erstellen einer RessourcengruppeCreate a resource group

Eine Ressourcengruppe ist ein logischer Container, in dem Azure-Ressourcen wie Web-Apps, Datenbanken und Speicherkonten bereitgestellt und verwaltet werden.A resource group is a logical container into which Azure resources like web apps, databases, and storage accounts are deployed and managed. Sie können z.B. die gesamte Ressourcengruppe später in einem einfachen Schritt löschen.For example, you can choose to delete the entire resource group in one simple step later.

Klicken Sie neben Ressourcengruppe auf Neu.Next to Resource Group, click New.

Klicken Sie neben „Ressourcengruppe“ auf „Neu“.

Geben Sie der Ressourcengruppe den Namen myResourceGroup.Name the resource group myResourceGroup.

Wie erstelle ich einen Plan?Create an App Service plan

Ein App Service-Plan gibt den Standort, die Größe und die Funktionen der Webserverfarm an, die Ihre App hostet.An App Service plan specifies the location, size, and features of the web server farm that hosts your app. Beim Hosten mehrerer Apps können Sie Geld sparen, indem Sie die Web-Apps für die gemeinsame Verwendung eines einzelnen App Service-Plans konfigurieren.You can save money when hosting multiple apps by configuring the web apps to share a single App Service plan.

In App Service-Plänen wird Folgendes definiert:App Service plans define:

  • Region (z.B. „Europa, Norden“, „USA, Osten“ oder „Asien, Südosten“)Region (for example: North Europe, East US, or Southeast Asia)
  • Instanzgröße (klein, mittel, groß)Instance size (small, medium, or large)
  • Skalierung (1 bis 20 Instanzen)Scale count (1 to 20 instances)
  • SKU (Free, Shared, Basic, Standard oder Premium)SKU (Free, Shared, Basic, Standard, or Premium)

Klicken Sie neben App Service-Plan auf Neu.Next to App Service Plan, click New.

Konfigurieren Sie den neuen App Service-Plan im Dialogfeld App Service-Plan konfigurieren mit den folgenden Einstellungen:In the Configure App Service Plan dialog, configure the new App Service plan with the following settings:

App Service-Plan erstellen

EinstellungSetting Vorgeschlagener WertSuggested value Weitere Informationen finden Sie unterFor more information
App Service-PlanApp Service Plan myAppServicePlanmyAppServicePlan App Service-PläneApp Service plans
LocationLocation Europa, WestenWest Europe Azure-RegionenAzure regions
GrößeSize KostenlosFree TarifePricing tiers

Erstellen einer SQL Server-InstanzCreate a SQL Server instance

Bevor Sie eine Datenbank erstellen, benötigen Sie einen logischen Azure SQL-Datenbank-Server.Before creating a database, you need an Azure SQL Database logical server. Ein logischer Server enthält eine Gruppe von Datenbanken, die als Gruppe verwaltet werden.A logical server contains a group of databases managed as a group.

Klicken Sie auf SQL-Datenbank erstellen.Click Create a SQL Database.

Erstellen einer SQL-Datenbank

Klicken Sie im Dialogfeld SQL-Datenbank konfigurieren auf Neu neben SQL Server.In the Configure SQL Database dialog, click New next to SQL Server.

Ein eindeutiger Servername wird generiert.A unique server name is generated. Dieser Name wird als Teil der Standard-URL für Ihren logischen Server <server_name>.database.windows.net verwendet.This name is used as part of the default URL for your logical server, <server_name>.database.windows.net. Er muss in Azure über alle Instanzen logischer Server hinweg eindeutig sein.It must be unique across all logical server instances in Azure. Sie können den Servernamen ändern, aber behalten Sie den generierten Wert für dieses Tutorial bei.You can change the server name, but for this tutorial, keep the generated value.

Fügen Sie den Benutzernamen und das Kennwort eines Administrators hinzu.Add an administrator username and password. Informationen zu den Anforderungen an die Komplexität von Kennwörtern finden Sie unter Kennwortrichtlinie.For password complexity requirements, see Password Policy.

Merken Sie sich diesen Benutzernamen und das Kennwort.Remember this username and password. Sie benötigen diese Angaben später zum Verwalten der Instanz des logischen Servers.You need them to manage the logical server instance later.

Wichtig

Ihr Kennwort ist in den Verbindungszeichenfolgen zwar maskiert (sowohl in Visual Studio als auch in App Service), aber allein die Tatsache, dass es irgendwo gespeichert ist, macht die App bereits anfälliger für Angriffe.Even though your password in the connection strings is masked (in Visual Studio and also in App Service), the fact that it's maintained somewhere adds to the attack surface of your app. App Service kann dieses Risiko durch die Verwendung verwalteter Dienstidentitäten beseitigen, da Geheimnisse dann nicht mehr im Code oder in der App-Konfiguration gespeichert werden müssen.App Service can use managed service identities to eliminate this risk by removing the need to maintain secrets in your code or app configuration at all. Weitere Informationen finden Sie in den nächsten Schritten.For more information, see Next steps.

SQL Server-Instanz erstellen

Klicken Sie auf OK.Click OK. Schließen Sie das Dialogfeld SQL-Datenbank konfigurieren noch nicht.Don't close the Configure SQL Database dialog yet.

Erstellen einer SQL-DatenbankCreate a SQL Database

Gehen Sie im Dialogfeld SQL-Datenbank konfigurieren wie folgt vor:In the Configure SQL Database dialog:

  • Behalten Sie den standardmäßig generierten Datenbanknamen bei.Keep the default generated Database Name.
  • Geben Sie unter Name der Verbindungszeichenfolge den Namen MyDbConnection ein.In Connection String Name, type MyDbConnection. Dieser Name muss mit der Verbindungszeichenfolge übereinstimmen, auf die in Models/MyDatabaseContext.cs verwiesen wird.This name must match the connection string that is referenced in Models/MyDatabaseContext.cs.
  • Klicken Sie auf OK.Select OK.

SQL-Datenbank konfigurieren

Im Dialogfeld App Service erstellen werden die von Ihnen konfigurierten Ressourcen angezeigt.The Create App Service dialog shows the resources you've configured. Klicken Sie auf Erstellen.Click Create.

Erstellte Ressourcen

Nachdem der Assistent die Erstellung der Azure-Ressourcen abgeschlossen hat, wird Ihre ASP.NET-App in Azure veröffentlicht.Once the wizard finishes creating the Azure resources, it publishes your ASP.NET app to Azure. Ihr Standardbrowser wird mit der URL für die bereitgestellte App gestartet.Your default browser is launched with the URL to the deployed app.

Fügen Sie einige Aufgaben hinzu.Add a few to-do items.

Veröffentlichte ASP.NET-Anwendung in Azure-App

Glückwunsch!Congratulations! Ihre datengesteuerte ASP.NET-Anwendung wird live in Azure App Service ausgeführt.Your data-driven ASP.NET application is running live in Azure App Service.

Lokaler Zugriff auf die SQL-DatenbankAccess the SQL Database locally

In Visual Studio können Sie Ihre neue SQL-Datenbank bequem im SQL Server-Objekt-Explorer überprüfen und verwalten.Visual Studio lets you explore and manage your new SQL Database easily in the SQL Server Object Explorer.

Erstellen einer DatenbankverbindungCreate a database connection

Wählen Sie im Menü Ansicht die Option SQL Server-Objekt-Explorer.From the View menu, select SQL Server Object Explorer.

Klicken Sie oben im SQL Server-Objekt-Explorer auf die Schaltfläche SQL Server hinzufügen.At the top of SQL Server Object Explorer, click the Add SQL Server button.

Konfigurieren der DatenbankverbindungConfigure the database connection

Erweitern Sie im Dialogfeld Verbinden den Knoten Azure.In the Connect dialog, expand the Azure node. Hier sind alle Ihre Instanzen von SQL-Datenbank in Azure aufgeführt.All your SQL Database instances in Azure are listed here.

Wählen Sie die SQL-Datenbank aus, die Sie zuvor erstellt haben.Select the SQL Database that you created earlier. Die Verbindung, die Sie zuvor erstellt haben, wird automatisch im unteren Bereich angezeigt.The connection you created earlier is automatically filled at the bottom.

Geben Sie das Administratorkennwort für die Datenbank ein, das Sie zuvor erstellt haben, und klicken Sie auf Verbinden.Type the database administrator password you created earlier and click Connect.

Datenbankverbindung in Visual Studio konfigurieren

Zulassen der Clientverbindung auf dem ComputerAllow client connection from your computer

Das Dialogfeld zum Erstellen einer neuen Firewallregelwird angezeigt.The Create a new firewall rule dialog is opened. Standardmäßig lässt die SQL-Datenbankinstanz nur Verbindungen von Azure-Diensten zu, etwa von der Azure-App.By default, your SQL Database instance only allows connections from Azure services, such as your Azure app. Erstellen Sie zum Herstellen einer Verbindung mit Ihrer Datenbank in der SQL-Datenbankinstanz eine Firewallregel.To connect to your database, create a firewall rule in the SQL Database instance. Mit der Firewallregel wird die öffentliche IP-Adresse Ihres lokalen Computers zugelassen.The firewall rule allows the public IP address of your local computer.

Das Dialogfeld ist bereits mit der öffentlichen IP-Adresse des Computers ausgefüllt.The dialog is already filled with your computer's public IP address.

Stellen Sie sicher, dass Meine IP-Clientadresse hinzufügen ausgewählt ist, und klicken Sie auf OK.Make sure that Add my client IP is selected and click OK.

Festlegen der Firewall für die SQL-Datenbankinstanz

Sobald das Erstellen der Firewalleinstellung in Visual Studio für die SQL-Datenbankinstanz abgeschlossen wurde, wird die Verbindung im SQL Server-Objekt-Explorer angezeigt.Once Visual Studio finishes creating the firewall setting for your SQL Database instance, your connection shows up in SQL Server Object Explorer.

Hier können Sie häufige Datenbankvorgänge ausführen, und z.B. Abfragen ausführen, Ansichten und gespeicherte Prozeduren erstellen usw.Here, you can perform the most common database operations, such as run queries, create views and stored procedures, and more.

Erweitern Sie Ihre Verbindung unter Datenbanken > <Ihre Datenbank> > Tabellen.Expand your connection > Databases > <your database> > Tables. Klicken Sie mit der rechten Maustaste auf die Tabelle Todoes, und wählen Sie Daten anzeigen.Right-click on the Todoes table and select View Data.

SQL-Datenbank-Objekte ansehen

Aktualisieren der App mit Code First-MigrationenUpdate app with Code First Migrations

Sie können die vertrauten Tools in Visual Studio verwenden, um Ihre Datenbank und App in Azure zu aktualisieren.You can use the familiar tools in Visual Studio to update your database and app in Azure. In diesem Schritt verwenden Sie Code First-Migrationen in Entity Framework, um eine Änderung am Datenbankschema vorzunehmen und sie in Azure zu veröffentlichen.In this step, you use Code First Migrations in Entity Framework to make a change to your database schema and publish it to Azure.

Weitere Informationen zur Verwendung von Entity Framework Code First-Migrationen finden Sie unter Getting Started with Entity Framework 6 Code First using MVC 5 (Erste Schritte mit Entity Framework 6 Code First per MVC 5).For more information about using Entity Framework Code First Migrations, see Getting Started with Entity Framework 6 Code First using MVC 5.

Aktualisieren Sie des DatenmodellsUpdate your data model

Öffnen Sie Models\Todo.cs im Code-Editor.Open Models\Todo.cs in the code editor. Fügen Sie der ToDo-Klasse die folgende Eigenschaft hinzu:Add the following property to the ToDo class:

public bool Done { get; set; }

Lokales Ausführen von Code First-MigrationenRun Code First Migrations locally

Führen Sie einige Befehle aus, um Aktualisierungen an Ihrer lokalen Datenbank vorzunehmen.Run a few commands to make updates to your local database.

Klicken Sie im Menü Extras auf NuGet-Paket-Manager > Paket-Manager-Konsole.From the Tools menu, click NuGet Package Manager > Package Manager Console.

Aktivieren Sie im Fenster „Paket-Manager-Konsole“ Code First-Migrationen:In the Package Manager Console window, enable Code First Migrations:

Enable-Migrations

Fügen Sie eine Migration hinzu:Add a migration:

Add-Migration AddProperty

Aktualisieren Sie die lokale Datenbank:Update the local database:

Update-Database

Drücken Sie Ctrl+F5, um die App auszuführen.Type Ctrl+F5 to run the app. Testen Sie die Links „Bearbeiten“, „Details“ und „Erstellen“.Test the edit, details, and create links.

Wenn die Anwendung ohne Fehler geladen wird, waren die Code First-Migrationen erfolgreich.If the application loads without errors, then Code First Migrations has succeeded. Allerdings wird die Seite noch genauso angezeigt, weil die Anwendungslogik noch nicht die neue Eigenschaft verwendet.However, your page still looks the same because your application logic is not using this new property yet.

Verwenden der neuen EigenschaftUse the new property

Nehmen Sie einige Änderungen an Ihrem Code vor, um die Done-Eigenschaft zu verwenden.Make some changes in your code to use the Done property. Der Einfachheit halber ändern Sie in diesem Lernprogramm nur Ansichten Index und Create, um die Eigenschaft in Aktion zu sehen.For simplicity in this tutorial, you're only going to change the Index and Create views to see the property in action.

Öffnen Sie Controllers\TodosController.cs.Open Controllers\TodosController.cs.

Suchen Sie die Create()-Methode in Zeile 52, und fügen Sie Done zur Liste der Eigenschaften im Bind-Attribut hinzu.Find the Create() method on line 52 and add Done to the list of properties in the Bind attribute. Anschließend sieht Ihre Create()-Methodensignatur wie im folgenden Code aus:When you're done, your Create() method signature looks like the following code:

public ActionResult Create([Bind(Include = "Description,CreatedDate,Done")] Todo todo)

Öffnen Sie Views\Todos\Create.cshtml.Open Views\Todos\Create.cshtml.

Im Razor-Code sollten Sie ein <div class="form-group">-Element sehen, das model.Description verwendet, sowie ein weiteres <div class="form-group">-Element, das model.CreatedDate verwendet.In the Razor code, you should see a <div class="form-group"> element that uses model.Description, and then another <div class="form-group"> element that uses model.CreatedDate. Fügen Sie direkt nach diesen beiden Elementen ein weiteres <div class="form-group">-Element hinzu, für das model.Done genutzt wird:Immediately following these two elements, add another <div class="form-group"> element that uses model.Done:

<div class="form-group">
    @Html.LabelFor(model => model.Done, htmlAttributes: new { @class = "control-label col-md-2" })
    <div class="col-md-10">
        <div class="checkbox">
            @Html.EditorFor(model => model.Done)
            @Html.ValidationMessageFor(model => model.Done, "", new { @class = "text-danger" })
        </div>
    </div>
</div>

Öffnen Sie Views\Todos\Index.cshtml.Open Views\Todos\Index.cshtml.

Suchen Sie nach dem leeren <th></th>-Element.Search for the empty <th></th> element. Fügen Sie direkt oberhalb dieses Elements den folgenden Razor-Code hinzu:Just above this element, add the following Razor code:

<th>
    @Html.DisplayNameFor(model => model.Done)
</th>

Suchen Sie nach dem <td>-Element, das die Html.ActionLink()-Hilfsmethoden enthält.Find the <td> element that contains the Html.ActionLink() helper methods. Fügen Sie über diesem <td> ein weiteres <td>-Element mit folgendem Razor-Code hinzu:Above this <td>, add another <td> element with the following Razor code:

<td>
    @Html.DisplayFor(modelItem => item.Done)
</td>

Mehr ist nicht erforderlich, um die Änderungen in den Ansichten Index und Create anzuzeigen.That's all you need to see the changes in the Index and Create views.

Drücken Sie Ctrl+F5, um die App auszuführen.Type Ctrl+F5 to run the app.

Sie können jetzt eine Aufgabe hinzufügen und die Option Fertig aktivieren.You can now add a to-do item and check Done. Die Aufgabe sollte dann auf der Startseite als erledigt angezeigt werden.Then it should show up in your homepage as a completed item. Beachten Sie, dass in der Ansicht Edit das Feld Done nicht angezeigt wird, da Sie die Ansicht Edit nicht geändert haben.Remember that the Edit view doesn't show the Done field, because you didn't change the Edit view.

Aktivieren von Code First-Migrationen in AzureEnable Code First Migrations in Azure

Da die Codeänderung, einschließlich der Datenbankmigration, funktioniert, können Sie sie in Ihrer Azure-App veröffentlichen und die SQL-Datenbank ebenfalls mit Code First-Migrationen aktualisieren.Now that your code change works, including database migration, you publish it to your Azure app and update your SQL Database with Code First Migrations too.

Klicken Sie wie zuvor mit der rechten Maustaste auf Ihr Projekt, und wählen Sie Veröffentlichen aus.Just like before, right-click your project and select Publish.

Klicken Sie auf Konfigurieren, um die Veröffentlichungseinstellungen zu öffnen.Click Configure to open the publish settings.

Veröffentlichungseinstellungen öffnen

Klicken Sie im Assistenten auf Weiter.In the wizard, click Next.

Stellen Sie sicher, dass die Verbindungszeichenfolge für die SQL-Datenbank unter MyDatabaseContext (MyDbConnection) angezeigt wird.Make sure that the connection string for your SQL Database is populated in MyDatabaseContext (MyDbConnection). Möglicherweise müssen Sie die Datenbank myToDoAppDb in der Dropdownliste auswählen.You may need to select the myToDoAppDb database from the dropdown.

Wählen Sie Code First-Migrationen ausführen (wird beim Anwendungsstart ausgeführt) aus, und klicken Sie auf Speichern.Select Execute Code First Migrations (runs on application start), then click Save.

Aktivieren von Code First-Migrationen in einer Azure-App

Veröffentlichen der ÄnderungenPublish your changes

Nachdem Sie Code First-Migrationen in der Azure-App aktiviert haben, können Sie die Änderungen am Code veröffentlichen.Now that you enabled Code First Migrations in your Azure app, publish your code changes.

Klicken Sie auf der Veröffentlichungsseite auf Veröffentlichen.In the publish page, click Publish.

Versuchen Sie erneut, Aufgaben hinzuzufügen, und wählen Sie Fertig aus. Sie sollten auf der Startseite als abgeschlossene Aufgaben angezeigt werden.Try adding to-do items again and select Done, and they should show up in your homepage as a completed item.

Azure-App nach Code First-Migration

Ihre gesamten vorhandenen Aufgaben werden weiterhin angezeigt.All your existing to-do items are still displayed. Wenn Sie die ASP.NET-Anwendung erneut veröffentlichen, gehen in der SQL-Datenbank vorhandene Daten nicht verloren.When you republish your ASP.NET application, existing data in your SQL Database is not lost. Außerdem wird durch Code First-Migrationen nur das Datenschema geändert, die vorhandenen Daten bleiben unverändert.Also, Code First Migrations only changes the data schema and leaves your existing data intact.

Streamen von AnwendungsprotokollenStream application logs

Sie können Ablaufverfolgungsmeldungen direkt aus der Azure-App in Visual Studio streamen.You can stream tracing messages directly from your Azure app to Visual Studio.

Öffnen Sie Controllers\TodosController.cs.Open Controllers\TodosController.cs.

Jede Aktion beginnt mit einer Trace.WriteLine()-Methode.Each action starts with a Trace.WriteLine() method. Dieser Code wird hinzugefügt, um zu zeigen, wie Sie Ihrer Azure-App Ablaufverfolgungsnachrichten hinzufügen können.This code is added to show you how to add trace messages to your Azure app.

Öffnen des Server-ExplorerOpen Server Explorer

Wählen Sie im Menü Ansicht die Option Server-Explorer.From the View menu, select Server Explorer. Sie können die Protokollierung für die Azure-App im Server-Explorer konfigurieren.You can configure logging for your Azure app in Server Explorer.

Aktivieren des ProtokollstreamingsEnable log streaming

Erweitern Sie im Server-Explorer den Knoten Azure > App Service.In Server Explorer, expand Azure > App Service.

Erweitern Sie die Ressourcengruppe myResourceGroup, die Sie beim Erstellen der Azure-App erstellt haben.Expand the myResourceGroup resource group, you created when you first created the Azure app.

Klicken Sie mit der rechten Maustaste auf Ihre Azure-App, und wählen Sie Streamingprotokolle anzeigen aus.Right-click your Azure app and select View Streaming Logs.

Aktivieren des Protokollstreamings

Die Protokolle werden jetzt in das Ausgabefenster gestreamt.The logs are now streamed into the Output window.

Protokollstreaming im Ausgabefenster

Es werden allerdings noch keine Ablaufverfolgungsmeldungen angezeigt.However, you don't see any of the trace messages yet. Das liegt daran, dass beim ersten Auswählen von Streamingprotokolle anzeigen die Azure-App die Ablaufverfolgungsebene auf Error festlegt, womit nur Fehlerereignisse protokolliert werden (mit der Trace.TraceError()-Methode).That's because when you first select View Streaming Logs, your Azure app sets the trace level to Error, which only logs error events (with the Trace.TraceError() method).

Ändern der AblaufverfolgungsebenenChange trace levels

Wenn Sie die Ablaufverfolgungsebenen ändern möchten, um andere Ablaufverfolgungsmeldungen auszugeben, wechseln Sie zurück zum Server-Explorer.To change the trace levels to output other trace messages, go back to Server Explorer.

Klicken Sie mit der rechten Maustaste auf Ihre Azure-App, und wählen Sie Einstellungen anzeigen aus.Right-click your Azure app again and select View Settings.

Wählen Sie in der Dropdownliste Anwendungsprotokollierung (Dateisystem) die Option Ausführlich aus.In the Application Logging (File System) dropdown, select Verbose. Klicken Sie auf Speichern.Click Save.

Ablaufverfolgungsebene in „Ausführlich“ ändern

Tipp

Sie können mit verschiedenen Ablaufverfolgungsebenen experimentieren, um zu sehen, welche Nachrichten für die jeweiligen Ebenen angezeigt werden.You can experiment with different trace levels to see what types of messages are displayed for each level. Bei der Ebene Informationen werden alle von Trace.TraceInformation(), Trace.TraceWarning() und Trace.TraceError() erstellten Protokolle eingeschlossen, aber keine Protokolle, die von Trace.WriteLine() erstellt wurden.For example, the Information level includes all logs created by Trace.TraceInformation(), Trace.TraceWarning(), and Trace.TraceError(), but not logs created by Trace.WriteLine().

Navigieren Sie in Ihrem Browser erneut zu Ihrer App unter http://<Ihr App-Name>.azurewebsites.net, und versuchen Sie, auf die Anwendung „To-Do-Liste“ in Azure zu klicken.In your browser navigate to your app again at http://<your app name>.azurewebsites.net, then try clicking around the to-do list application in Azure. Die Ablaufverfolgungsmeldungen werden jetzt in das Ausgabefensterin Visual Studio gestreamt.The trace messages are now streamed to the Output window in Visual Studio.

Application: 2017-04-06T23:30:41  PID[8132] Verbose     GET /Todos/Index
Application: 2017-04-06T23:30:43  PID[8132] Verbose     GET /Todos/Create
Application: 2017-04-06T23:30:53  PID[8132] Verbose     POST /Todos/Create
Application: 2017-04-06T23:30:54  PID[8132] Verbose     GET /Todos/Index

Beenden des ProtokollstreamingsStop log streaming

Klicken Sie zum Beenden des Diensts für das Protokollstreaming auf die Schaltfläche Überwachung beenden im Ausgabefenster.To stop the log-streaming service, click the Stop monitoring button in the Output window.

Beenden des Protokollstreamings

Verwalten der Azure-AppManage your Azure app

Wechseln Sie zum Azure-Portal, um die Web-App zu verwalten.Go to the Azure portal to manage the web app. Suchen Sie nach App Services, und wählen Sie diese Option aus.Search for and select App Services.

Suchen nach „Azure App Services“

Wählen Sie den Namen Ihrer Azure-App aus.Select the name of your Azure app.

Portalnavigation zur Azure-App

Sie befinden sich auf der Seite Ihrer App.You have landed in your app's page.

Standardmäßig wird im Portal die Seite Übersicht angezeigt.By default, the portal shows the Overview page. Diese Seite bietet einen Überblick über den Status Ihrer App.This page gives you a view of how your app is doing. Hier können Sie auch einfache Verwaltungsaufgaben wie Durchsuchen, Beenden, Neustarten und Löschen durchführen.Here, you can also perform basic management tasks like browse, stop, start, restart, and delete. Die Registerkarten links auf der Seite zeigen die verschiedenen Konfigurationsseiten, die Sie öffnen können.The tabs on the left side of the page show the different configuration pages you can open.

App Service-Seite im Azure-Portal

Bereinigen von RessourcenClean up resources

In den vorherigen Schritten haben Sie Azure-Ressourcen in einer Ressourcengruppe erstellt.In the preceding steps, you created Azure resources in a resource group. Wenn Sie diese Ressourcen in Zukunft nicht mehr benötigen, können Sie sie löschen, indem Sie die Ressourcengruppe löschen.If you don't expect to need these resources in the future, you can delete them by deleting the resource group.

  1. Wählen Sie auf der Seite „Übersicht“ Ihrer Web-App im Azure-Portal den Link myResourceGroup unter Ressourcengruppe aus.From your web app's Overview page in the Azure portal, select the myResourceGroup link under Resource group.
  2. Stellen Sie auf der Seite der Ressourcengruppe sicher, dass die Ressourcen aufgelistet sind, die Sie löschen möchten.On the resource group page, make sure that the listed resources are the ones you want to delete.
  3. Wählen Sie Löschen aus, geben Sie im Textfeld myResourceGroup ein, und wählen Sie dann Löschen aus.Select Delete, type myResourceGroup in the text box, and then select Delete.

Nächste SchritteNext steps

In diesem Tutorial haben Sie Folgendes gelernt:In this tutorial, you learned how to:

  • Erstellen einer SQL-Datenbank in AzureCreate a SQL Database in Azure
  • Herstellen einer Verbindung mit SQL-Datenbank für eine ASP.NET-AppConnect an ASP.NET app to SQL Database
  • Bereitstellen der Anwendung in AzureDeploy the app to Azure
  • Aktualisieren des Datenmodells und erneutes Bereitstellen der AppUpdate the data model and redeploy the app
  • Streamen von Protokollen von Azure auf Ihr TerminalStream logs from Azure to your terminal
  • Verwalten der App im Azure-PortalManage the app in the Azure portal

Im nächsten Tutorial erfahren Sie, wie Sie ganz einfach die Sicherheit Ihrer Verbindung mit Azure SQL-Datenbank verbessern.Advance to the next tutorial to learn how to easily improve the security of your connection Azure SQL Database.