Ich versuche Code First mit meiner lokalen Instanz von Sql Server 2008 R2 zu verwenden. Ich habe einen Benutzer 'dev' erstellt und kann mich mit Sql Managment Studio anmelden und Datenbanken erstellen. Das Problem ist, dass ich eine Fehlermeldung bekomme, wenn ich versuche, eine Datenbank mit DbContext in EntityFramework zu erstellen. Hier ist die Fehlermeldung:Entity Framework-Code Erster Fehler "Fehler beim Auffinden des Servers/der Instanz angegeben"
Die Fehlermeldung Ich habe meine Sql-Server überprüft und es ermöglicht Remote-Verbindungen.
namespace CodeFirstConsole
{
public class Program
{
static void Main(string[] args)
{
var db = new MyContext();
try { Console.WriteLine(db.Parents.Count()); }
catch (Exception) { throw; }
Console.Read();
}
}
internal class MyContext : DbContext
{
public DbSet<ParentObject> Parents { get; set; }
public DbSet<ChildObject> Children { get; set; }
public MyContext()
{
this.Database.Connection.ConnectionString =
"Data Source=.;Database=ConsoleTest;Initial Catalog=ConsoleTest;User ID=dev;Password=dev;";
}
}
internal class ParentObject
{
public int Id { get; set; }
public string PropertyOne { get; set; }
}
internal class ChildObject
{
public int Id { get; set; }
public bool PropertyOne { get; set; }
public string PropertyTwo { get; set; }
public virtual ParentObject Parent { get; set; }
}
internal class MyInitializer : DropCreateDatabaseAlways<MyContext>
{
protected override void Seed(MyContext context)
{
context.Parents.Add(new ParentObject() { PropertyOne = "hi" });
base.Seed(context);
}
}
}
Haben Sie versucht, die Datenquelle explizit anzugeben, ich weiß, wenn Sie es leer lassen, denkt es, dass es die gleiche Maschine ist, aber versuchen Sie es und Wege und sehen Sie, ob Sie die gleichen Ergebnisse erhalten. –
Ja, ich habe es explizit in meinem Beispiel angegeben, als ich die Verbindungszeichenfolge festlegte. –
Überprüfen Sie einfach den Code oben, den Sie geschrieben haben, auch auf dem SQL Server-Computer, mit dem Sie sich verbinden, richtig? Einfach überprüfen. –