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.
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
- Laden Sie das Beispielprojekt herunter.Download the sample project.
- Extrahieren (entzippen) Sie die Datei dotnet-sqldb-tutorial-master.zip.Extract (unzip) the dotnet-sqldb-tutorial-master.zip file.
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.
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.
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.
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.
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.
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.
Klicken Sie neben Ressourcengruppe auf Neu.Next to Resource Group, click New.
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)
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:
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 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.
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.
Klicken Sie unter Verbundene Dienste neben „SQL Server-Datenbank“ auf Konfigurieren.Click Configure next to SQL Server Database under Connected Services.
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.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.
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.
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Die Protokolle werden jetzt in das Ausgabefenster gestreamt.The logs are now streamed into the Output window.
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.
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.
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.
Wählen Sie den Namen Ihrer Azure-App aus.Select the name of your 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.
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.
- 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.
- 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.
- 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.
Access SQL Database securely using managed identities for Azure resources (Sicheres Zugreifen auf SQL-Datenbank mithilfe verwalteter Identitäten für Azure-Ressourcen)Access SQL Database securely using managed identities for Azure resources
Weitere Ressourcen:More resources:
Möchten Sie Ihre Cloudausgaben optimieren und dabei sparen?Want to optimize and save on your cloud spending?