Những gì bạn có là một chuỗi kết nối ADO.NET hợp lệ - nhưng nó KHÔNG PHẢI là một chuỗi kết nối Entity Framework hợp lệ.
Chuỗi kết nối EF sẽ trông giống như sau:
<connectionStrings>
<add name="NorthwindEntities" connectionString=
"metadata=.\Northwind.csdl|.\Northwind.ssdl|.\Northwind.msl;
provider=System.Data.SqlClient;
provider connection string="Data Source=SERVER\SQL2000;Initial Catalog=Northwind;Integrated Security=True;MultipleActiveResultSets=False""
providerName="System.Data.EntityClient" />
</connectionStrings>
Bạn đang thiếu tất cả các phần tử metadata=
và providerName=
trong chuỗi kết nối EF của mình ...... về cơ bản bạn chỉ có những gì chứa trong provider connection string
phần.
Sử dụng trình thiết kế EDMX sẽ tạo chuỗi kết nối EF hợp lệ cho bạn, trong web.config hoặc app.config của bạn.
Marc
CẬP NHẬT: OK, tôi hiểu bạn đang cố gắng làm gì: bạn cần chuỗi kết nối "ADO.NET" thứ hai chỉ dành cho cơ sở dữ liệu thành viên / người dùng ASP.NET. Chuỗi của bạn ổn, nhưng tên cung cấp bị sai - nó sẽ phải là "System.Data.SqlClient" - kết nối này không sử dụng ENtity Framework - sau đó không chỉ định "EntityClient" cho nó!
<add name="ASPNETMembership"
connectionString="Data Source=MONTGOMERY-DEV\SQLEXPRESS;Initial Catalog=ASPNETDB;Integrated Security=True;"
providerName="System.Data.SqlClient" />
Nếu bạn chỉ định chuỗi kết nối providerName=System.Data.EntityClient
==> Entity Framework (với siêu dữ liệu = và mọi thứ).
Nếu bạn cần và chỉ định providerName=System.Data.SqlClient
==> chuỗi kết nối ADO.NET SQL Server thẳng mà không có tất cả các bổ sung EF