2016-11-16 6 views
2

Ich bin sehr aufgeregt, mit der Entwicklung von .NET auf meinem Mac zu beginnen, werde aber frustriert, um alles herauszufinden. Also habe ich eine WebApplication erstellt, indem ich yo aspnet und out of the box es funktioniert toll. Es kommt mit einer Verbindung zu einer lokalen Datenbank, die im Projekt gespeichert ist. Wo ich Probleme habe, verbinde ich es mit einer entfernten DB, die in meinem azurblauen Portal gehostet wird.So stellen Sie eine Verbindung zur Azure-Datenbank mit der Standard-Dotnet-Webvorlage her

Meine Verbindungszeichenfolge unten direkt von meinem azurblauen Portal. Ich habe meine Appsettings.json "DefaultConnection" -Eigenschaft auf diesen Wert aktualisiert (mit dem Benutzernamen und dem Passwort fehlt unten) und ich bekomme Fehler wie "ArgumentException: Keyword nicht unterstützt: 'Server'." Ich habe mehrere verschiedene Verbindungszeichenfolgen ausprobiert und keine funktionieren.

Zugegeben, ich bin neu in all dem, also vermisse ich wahrscheinlich etwas Einfaches, aber bei der Suche im Internet muss ich noch die Lösung finden.

Server=tcp:mydbserver.database.windows.net,1433;Initial Catalog=LH;Persist Security Info=False;User ID={your_username};Password={your_password};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30; 

als Referenz hier ist meine ganze appsettings.json (ohne Benutzername & passwrod ...)

{ 
    "ConnectionStrings": { 
    //"DefaultConnection": "Data Source=LH.db" 
    "DefaultConnection": "Server=tcp:mydbserver.database.windows.net,1433;Initial Catalog=lighthouseFSQ;Persist Security Info=False;User ID={Username};Password={Password};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"   
    }, 
    "Logging": { 
    "IncludeScopes": false, 
    "LogLevel": { 
     "Default": "Debug", 
     "System": "Information", 
     "Microsoft": "Information" 
    } 
    } 
} 

Jede Hilfe wird sehr geschätzt. FYI Ich habe das in Windows VS2015 versucht und es hat gut funktioniert.

Antwort

4

Standardmäßig verwendet die dotnet new -t web tempalte die SQLite-Datenbank, sodass nur das Ändern der Verbindungszeichenfolge nicht ausreicht, um den Anbieter zu ändern.

Sie müssen auch die Microsoft.EntityFrameworkCore.Sqlite Paket von project.json und ersetzen sie durch Microsoft.EntityFramework.SqlServer (vorausgesetzt, Sie sind mit dem SQLServer von Azure) entfernen. Dann in Ihrem Startup.cs müssen Sie die

// Add framework services. 
services.AddDbContext<ApplicationDbContext>(options => 
    options.UseSqlite(Configuration.GetConnectionString("DefaultConnection"))); 

mit

// Add framework services. 
services.AddDbContext<ApplicationDbContext>(options => 
    options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"))); 

ersetzen und die Namensräume bei Bedarf ändern.

aktualisieren

In project.json brauchen Sie nur die Abhängigkeit mit SQLite zu ändern.

"dependencies": { 
    ... 
    "Microsoft.EntityFrameworkCore.Sqlite": "1.0.1", 
    ... 
    } 
} 

zu

"dependencies": { 
    ... 
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.1", 
    ... 
    } 
} 

Wenn es auch eine Microsoft.EntityFrameworkCore.Sqlite.Design ch ange, die auch zu Microsoft.EntityFrameworkCore.SqlServer.Design Auch sie gibt es für den Gerüstbau usw.

+0

Danke für die Antwort, das macht durchaus Sinn. Wäre es zu viel, um eine Probe genau zu fragen, was ich in project.json ändern muss, sehe ich, wo ich es ändern muss, aber es mag nicht, was ich einlege. "Microsoft.AspNetCore.Routing": "1.0 .1 ", " Microsoft.AspNetCore.Server.IISIntegration ":" 1.0.0 ", " Microsoft.AspNetCore.Server.Kestrel ":" 1.0.1 ", " Microsoft.AspNetCore.StaticFiles ":" 1.0. 0 ", " Microsoft.EntityFrameworkCore.Sqlite ":" 1.0.1 ", " Microsoft.EntityFrameworkCore.Sqlite.Design ": { " Version ":" 1.0.0 ", " type ":" build " }, –

+0

Ich habe aktualisiert, aber es ist wirklich nur die Abhängigkeit Abschnitt – Tseng

+0

Vielen Dank, das hat perfekt funktioniert.Ich war verloren auf der Version nach dem Finden von widersprüchlichen Beispielen online. –

Verwandte Themen