Tôi đang cố gắng sử dụng Mã đầu tiên với phiên bản Sql Server 2008 R2 cục bộ của mình. Tôi đã tạo một người dùng 'dev' và có thể đăng nhập và tạo cơ sở dữ liệu bằng Sql Managment Studio. Vấn đề là tôi tiếp tục nhận được một thông báo lỗi khi cố tạo một cơ sở dữ liệu bằng DbContext trong EntityFramework. Đây là thông báo lỗi:Mã khuôn khổ thực thể Lỗi đầu tiên "Lỗi định vị máy chủ/cá thể được chỉ định"
"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"
Thông báo lỗi Tôi đã kiểm tra máy chủ Sql và cho phép kết nối từ xa.
Tôi đã trừu tượng hóa hệ thống của tôi với đoạn mã sau và nhận được lỗi tương tự:
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);
}
}
}
Bạn đã cố gắng chỉ định rõ nguồn dữ liệu, tôi biết nếu bạn để trống nó nghĩ rằng nó cùng một máy nhưng hãy thử đặt nó vào và cách và xem bạn có nhận được kết quả tương tự không. –
Có, tôi đã chỉ định rõ ràng trong ví dụ của mình khi tôi đặt chuỗi kết nối. –
Chỉ cần kiểm tra rõ ràng là mã ở trên mà bạn đã viết cũng nằm trên máy SQL Server bạn đang kết nối phải không? Chỉ cần kiểm tra. –