Ich bin ein neuer Webentwickler und versuche, eine Testwebsite mit Azure-Testdiensten zu hosten.Der Versuch, eine Testwebsite mit Azure zu hosten, aber die SQL-Datenbank wird nicht übertragen.
ich die Test-Site sehen (Sie dies testen zugreifen können) an: http://kencast20160830102548.azurewebsites.net/
Wenn Sie jedoch auf die Dienste gehen -> Fazzt -> Geräte und Anwendungen Seiten, bekomme ich diesen Fehler:
Error. An error occurred while processing your request. Development Mode Swapping to Development environment will display more detailed information about the error that occurred.
Development environment should not be enabled in deployed applications, as it can result in sensitive information from exceptions being displayed to end users. For local debugging, development environment can be enabled by setting the ASPNETCORE_ENVIRONMENT environment variable toDevelopment, and restarting the application."
Diese Seiten basieren auf einer SQL-Datenbank, daher denke ich, dass dies das Problem ist.
Ich habe versucht, mit den Richtungen hier veröffentlicht zu folgen: https://docs.asp.net/en/latest/tutorials/publish-to-azure-webapp-using-vs.html
aber ich Konto meines Microsoft Zu, wenn angemeldet nicht finden kann, das „Configure SQL-Datenbank“ Pop-up-Fenster in.
Die Richtungen scheinen nicht mit denen zu gehen, die in Azure existieren.
Update- 8/31/2016
Ich habe recherchiert und gelernt ein bisschen mehr: Ich habe ein Projekt mit zwei DBContexts.
Wenn ich in Azure publiziere, veröffentlicht es Tabellen aus ApplicationDBContext, aber nicht die Tabellen aus MyCompanyContext. Ich kann mit SQL Server Object Explorer überprüfen. Ich kann meine lokalen Verbindungszeichenfolgen in appsettings.json Datei für ApplicationDB und MyCompanyDB sehen. Hier ist der Code von appsettings.json:
{
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=aspnet-MyCompany-3097a012-5e00-4c25-ad83-2730b4d73b4b;Trusted_Connection=True;MultipleActiveResultSets=true"
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
},
"Data": {
"MyCompanyContext": {
"ConnectionString": "Server=(localdb)\\mssqllocaldb;Database=MyCompanyContext-f9de2588-77e8-41dd-abb3-84341610b31a;Trusted_Connection=True;MultipleActiveResultSets=true"
}
}
}
Allerdings, wenn ich auf den "SQL Server Object Explorer" Fenster schauen, wie ich sehe, dass die Datenbank auf Azure gehostet, mycompanydb.database.windows .net (SQL Server 11.0.9231 -mycompanydb, MyCompany_db) hat nur die Tabellen aus der Datenbank "DefaultConnection" und nichts aus "MyCompanyContext".
Wie bekomme ich die Tabellen von der zweiten Datenbank (MYCompanyContext) nach Azure?
Ich habe diese Stack Overflow Antwort untersucht, aber es verwendet Enable-Migration in der PMC. Wenn ich das tue, erhalte ich einen Fehler, der enable-migrations ist veraltet.
Vor Ort habe ich immer getan Migrationen mit diesem: Add-Migrationen -c
Jede Hilfe MyCompanyContext Sie mich würde geben könnte sehr geschätzt.
Danke!
Das configure SQL zeigt sich, wenn Sie SQL sich verbinden EF verwenden und dass der Assistent identifiziert eine Existenz DbContext Klasse (atleast, das, was mit meinem VS ist passiert, 2015) . Um Ihre App dazu zu bringen, eine Verbindung mit dem SQL-Db herzustellen, lesen Sie möglicherweise die Verbindungszeichenfolge in einem sogenannten 'Startup.cs', wenn Sie ihn in der Datei appsettings.json gespeichert haben. https://docs.asp.net/en/latest/tutorials/first-mvc-app/working-with-sql.html. Dann veröffentlichen Sie die Web-App auf azurblau, wie in dem von Ihnen geposteten Link gezeigt. – Jaya
@JS_GodBlessAll Vielen Dank für die Antwort, aber ich verstehe nicht. Was ist EF? Es wurde in dem Link erwähnt, der in Ihrem Kommentar enthalten war. Ich verstehe auch nicht, was ich von diesem Kommentar aus tun sollte: "Damit Sie Ihre App mit dem SQL-Db verbinden können, lesen Sie möglicherweise die Verbindungszeichenfolge in einem sogenannten Startup.cs, wenn Sie es in Appsettings gespeichert haben. json file. docs.asp.net/en/latest/tutorials/first-mvc-app/... "Dieser Link scheint über das Ausführen einer SQL-Datenbank in einer lokalen Datenbank zu laufen. Ich möchte es auf Azure ausführen. Vielen Dank! –
np, EF = Entity-Framework; um eine Verbindung zu SQL Db herzustellen, sei es auf azur oder lokal - Sie müssen Ihre Verbindungszeichenfolge entsprechend konfigurieren. Wo immer es lokal heißt, zeigen Sie es auf Ihren SQL-Server in der Cloud. Startup.cs ist der Einstiegspunkt für Ihre .net Core App. Hier sind einige der nützlichen Links, um Sie zu starten https://docs.asp.net/en/latest/data/index.html; http://stackoverflow.com/questions/31097933/setting-the-sql-connection-string-for-asp-net-5-web-app-in-azure – Jaya