Tôi đang cố gắng sử dụng Entity Framework 4.1 RC với phiên bản SQL Server 2005. Tôi đã tạo ra một cơ sở dữ liệu rỗng và tôi muốn tiếp tục tồn tại các đối tượng POCO của mình. POCO của tôi trông giống như:Entity Framework 4.1Code Đầu tiên kết nối với Sql Server 2005
public class Cart
{
public Cart()
{
this.CartId = Guid.NewGuid();
}
public Guid CartId { get; set; }
public decimal TotalCost { get; set; }
public decimal SubTotalCost { get; set; }
public decimal Tax { get; set; }
public decimal EstimatedShippingCost { get; set; }
}
My CartContext là:
public class CartContext : DbContext
{
public DbSet<Cart> Carts { get; set; }
public DbSet<Attribute> Attributes { get; set; }
public DbSet<AttributeItem> AttributeItems { get; set; }
}
Tôi có một chuỗi kết nối:
<add name="CartContext" connectionString="Server=myserver.mynetwork.net;User ID=MyUser;Pwd=mypassword;Initial Catalog=ExistingDb" providerName="System.Data.SqlClient" \>
Khi tôi cố gắng và thêm một đối tượng với bối cảnh và lưu nó tôi get:
System.Data.Entity.Infrastructure.DbUpdateEx lừa dối: Đã xảy ra lỗi trong khi cập nhật các mục nhập . Xem ngoại lệ bên trong cho chi tiết . ---> System.Data.UpdateException: Đã xảy ra lỗi khi cập nhật các mục nhập. Xem ngoại lệ bên trong để biết chi tiết. ---> System.Data.SqlClient.SqlException: Tên đối tượng không hợp lệ 'dbo.Carts'.
Nếu tôi hồ sơ cơ sở dữ liệu tôi có thể thấy người dùng kết nối, tìm kiếm cơ sở dữ liệu trong sys.tables chạy truy vấn này:
SELECT TOP (1)
[Extent1].[Id] AS [Id],
[Extent1].[ModelHash] AS [ModelHash]
FROM [dbo].[EdmMetadata] AS [Extent1]
ORDER BY [Extent1].[Id] DESC
Sau đó cố gắng để chèn đối tượng giỏ hàng của tôi. Nó không bao giờ cố gắng tạo bảng Carts. Tôi đoán có điều gì đó sai trái với chuỗi kết nối, nhưng tôi không thể tìm thấy các ví dụ ở bất cứ đâu về cách thực hiện điều này.
Kết thúc chuỗi kết nối của bạn, bạn đã có một dấu chéo ngược nhưng nó phải là một forward slash ie /> not \> –