Я пытаюсь использовать Code First с моим локальным экземпляром Sql Server 2008 R2. Я создаю пользовательский «dev» и могу входить в систему и создавать базы данных с помощью Sql Managment Studio. Проблема в том, что я продолжаю получать сообщение об ошибке при попытке создать базу данных с использованием DbContext в EntityFramework. Вот сообщение об ошибке:Первая ошибка «Ошибка определения местоположения сервера/экземпляра»
"A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified"
Сообщение об ошибке Я проверил свой сервер Sql и разрешил удаленные подключения.
Я отведенный свою систему с помощью следующего кода и получить ту же ошибку:
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);
}
}
}
Вы пробовали явно указывать источник данных, я знаю, что если вы оставите его пустым, он подумает о своей машине, но попробуйте поместить ее и проделать и посмотреть, получите ли вы те же результаты. –
Да, я явно указал его в моем примере, когда я установил строку подключения. –
Просто проверяя, что код выше, который вы написали, также находится на компьютере SQL Server, с которым вы подключаетесь справа? Просто проверяю. –