Tutorial: Bereitstellen einer ASP.NET-App in Azure mit Azure SQL-DatenbankTutorial: Deploy an ASP.NET app to Azure with Azure 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 Datenbank in Azure SQL-DatenbankCreate a database in Azure SQL Database
  • 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 einer ASP.NET-Anwendung in AzurePublish ASP.NET application to Azure

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

Wählen Sie als Ziel Azure aus, klicken Sie auf „Weiter“, und vergewissern Sie sich, dass Azure App Service (Windows) ausgewählt ist. Klicken Sie anschließend erneut auf „Weiter“.Select Azure as your target, click next, and make sure that Azure App Service (Windows) is selected and click next again.

Veröffentlichen über die Projektübersichtsseite

Anmelden bei AzureSign in to Azure

Klicken Sie im Dialogfeld Veröffentlichen im Dropdownmenü des Konto-Managers auf Konto hinzufügen, und melden Sie sich dann bei Ihrem Azure-Abonnement an.In the Publish dialog, click Add an account from the account manager drop down, 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.

Anmelden bei Azure

Hinweis

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

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, such as 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.

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

    Klicken Sie neben „Ressourcengruppe“ auf „Neu“.

  2. 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 you host 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)
  1. Klicken Sie neben App Service-Plan auf Neu.Next to App Service Plan, click New.

  2. 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
  3. Im Dialogfeld Veröffentlichen werden die von Ihnen konfigurierten Ressourcen angezeigt.The Publish dialog shows the resources you've configured. Klicken Sie auf Fertig stellen.Click Finish.

    Erstellte Ressourcen

Erstellen eines ServersCreate a server

Bevor Sie eine Datenbank erstellen, benötigen Sie einen logischen SQL-Server.Before creating a database, you need a logical SQL server. Ein logischer Server ist ein logisches Konstrukt, das eine Gruppe von Datenbanken enthält, die als Gruppe verwaltet werden.A logical SQL server is a logical construct that contains a group of databases managed as a group.

  1. Klicken Sie unter Verbundene Dienste neben „SQL Server-Datenbank“ auf Konfigurieren.Click Configure next to SQL Server Database under Connected Services.

    Erstellen einer SQL-Datenbank

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

    Ein eindeutiger Servername wird generiert.A unique server name is generated. Dieser Name wird als Teil der Standard-URL für Ihren Server <server_name>.database.windows.net verwendet.This name is used as part of the default URL for your server, <server_name>.database.windows.net. Er muss in Azure SQL über alle Server hinweg eindeutig sein.It must be unique across all servers in Azure SQL. 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.

  3. 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 des Servers.You need them to manage the server later.

    Server erstellen

    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.

  4. 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 Datenbank in Azure SQL-DatenbankCreate a database in Azure SQL Database

  1. Gehen Sie im Dialogfeld Azure SQL-Datenbank wie folgt vor:In the Azure SQL Database dialog:

    • Behalten Sie den standardmäßig generierten Datenbanknamen bei.Keep the default generated Database Name.
    • Klicken Sie auf Erstellen.Select Create.

    Konfigurieren der Datenbank

  2. Geben Sie unter Name der Datenbankverbindungszeichenfolge die Zeichenfolge MyDbConnection ein.In the Database 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.

  3. Geben Sie den Benutzernamen und das Kennwort des Administrators, die Sie in Schritt 3 Erstellen eines Servers verwendet haben, als Datenbankbenutzernamen und Datenbankkennwort ein.Enter the Admin username and password you used in Create a server step 3 into the Database username and password respectively.

    Konfigurieren der Datenbankverbindungszeichenfolge

  4. Wählen Sie Fertig stellen aus.Select Finish.

Nachdem der Assistent die Erstellung der Azure-Ressourcen abgeschlossen hat, klicken Sie auf Veröffentlichen, um Ihre ASP.NET-App in Azure bereitzustellen.Once the wizard finishes creating the Azure resources, click Publish to deploy 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 DatenbankAccess the database locally

In Visual Studio können Sie Ihre neue Datenbank bequem im SQL Server-Objekt-Explorer überprüfen und verwalten.Visual Studio lets you explore and manage your new 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 Datenbank aus, die Sie zuvor erstellt haben.Select the 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 ein Server nur Verbindungen von Azure-Diensten wie Ihrer Azure-App mit seiner Datenbank zu.By default, a server only allows connections to its databases from Azure services, such as your Azure app. Erstellen Sie zum Herstellen einer Verbindung mit Ihrer Datenbank von außerhalb von Azure aus eine Firewallregel auf Serverebene.To connect to your database from outside of Azure, create a firewall rule at the server level. 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.

Erstellen einer Firewallregel

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 Datenbank in Azure SQL-DatenbankCreate a database in Azure SQL Database
  • 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.

Weitere Ressourcen:More resources:

Möchten Sie Ihre Cloudausgaben optimieren und dabei sparen?Want to optimize and save on your cloud spending?