2016-11-30 5 views
0

Ich verwende EF Core, um eine Verbindung zu einer MySQL-Datenbank herzustellen. Seit dem Upgrade von 1.0 auf 1.1 scheint meine Verbindungszeichenfolge nicht richtig gelesen zu werden. Hier ist meine project.json:ConnectionString nicht richtig gelesen - EF Core

{ 
    "version": "1.0.0-*", 

    "dependencies": { 
    "MySql.Data": "7.0.6-IR31", 
    "MySql.Data.EntityFrameworkCore": "7.0.6-IR31", 
    "NETStandard.Library": "1.6.1" 
    }, 

    "tools": { 
    "Microsoft.EntityFrameworkCore.Tools.DotNet": "1.1.0-*" 
    }, 

    "frameworks": { 
    "netstandard1.6": { 
     "imports": "dnxcore50" 
    } 
    } 
} 

Ich bin ein DbContext wie folgt initialisiert:

var optionsBuilder = new DbContextOptionsBuilder<Entities>(); 
optionsBuilder.UseMySQL(TestSettings.ConnectionString); 

// Ensure database creation 
context = new Entities(optionsBuilder.Options); 

Es scheint einige Standardwert für den Hostnamen zu ersetzen:

Unable to connect to any of the specified MySQL hosts. 
One or more errors occurred. (The requested address is not valid in its context 255.255.255.255:3306) 

The requested address is not valid in its context 255.255.255.255:3306 

Diese ist die Verbindungszeichenfolge:

"server=mmocstagingdb.australiasoutheast.cloudapp.azure.com;user id=root;password=root;database=root;Convert Zero Datetime=True;SSL Mode=None" 

(Benutzername, Passwort und Datenbankwerte werden ersetzt) ​​TestSettings ist eine statische Klasse mit einem statischen Feld ConnectionString

Wer hat irgendwelche Ideen?

P.S.

ich glaube, diese Frage etwas verwandt ist: MissingMethodException DbSet.ToList

ich .NET-Core aktualisiert 1.1 in letzter Zeit und lief in den gleichen Fehler wie die genannten Post. Ich habe es mit der akzeptierten Antwort gelöst. Aber jetzt läuft dieses Problem auf.

+2

Können Sie die Verbindungszeichenfolge veröffentlichen? –

+0

@ J.Pichardo Veröffentlicht. Bitte sehen Sie edit – l3utterfly

+1

@ l3utterfly Vielleicht benötigt Ihr Server 'SSL'. Hast du das versucht? – rbr94

Antwort

3

Peinliche Antwort hier, aber für den Fall, dass jemand anderes in diese kryptische Fehlermeldung läuft.

Es stellt sich heraus, der Host konnte nicht zugegriffen werden, weil ich den Server auf Azure zuvor gestoppt und vergessen habe.

Aber anscheinend, wenn der Host nicht zugänglich ist, wird es versuchen, eine Verbindung zu 255.255.255.255:3306 ... was mich den falschen Gedankengang führen denken, dass die Verbindungszeichenfolge nicht korrekt übergeben wurde.