Đây là tình huống của tôi: Tôi đã làm việc trên ứng dụng ASP.NET MVC 3 trong một thời gian. Nó có một cơ sở dữ liệu (được xây dựng từ một dự án db; tôi sẽ sử dụng db-first) mà tôi có một mô hình edmx và sau đó là một tập các POCO. Các thực thể của tôi có tên số nhiều trong cơ sở dữ liệu và các POCO có tên ít. Tất cả mọi thứ bản đồ độc đáo mà không có một vấn đề.Entity Framework (4.3) tìm kiếm tên số ít thay vì số nhiều (khi tên thực thể kết thúc bằng "s")
Hoặc được sử dụng cho đến khi tôi thêm một bảng mới (được gọi là TransactionStatuses). Bây giờ tất cả các thực thể cũ vẫn hoạt động nhưng thực thể mới thì không. Khi tôi cố gắng hăm hở nạp nó cùng với một thực thể có liên quan:
var transactions = (from t in db.Transactions.Include(s => s.TransactionStatus) //TransactionStatus - navigation property in Transactions to TransactionStatuses
where t.CustomerID == CustomerID
select t).ToList();
tôi nhận được
tên đối tượng không hợp lệ 'dbo.TransactionStatus'.
Tôi thậm chí đã làm một thử nghiệm đơn giản:
List<TransactionStatus> statuses = db.TransactionStatuses.ToList();
= cùng một kết quả.
Tôi đã cập nhật (và thậm chí được tạo lại) edmx từ db và đã trải qua nó qua lại cố gắng tìm ra những điểm khác biệt về ánh xạ cho dbo.TransactionStatus * es * lên.
Nếu ai đó có thể chỉ cho tôi theo hướng sửa chữa thì điều đó thật tuyệt vời.
P.S. Tắt đa nguyên không phải là một lựa chọn, cảm ơn.
Cập nhật: Tôi đã tìm ra câu trả lời của tôi bên dưới.
bạn có thể tạo phiên bản mới của TransactionStatuses không? Nếu vậy hãy nhìn vào sql ra ngoài mà EF đang tạo ra và chắc chắn rằng nó đang chỉ rõ bảng chính xác. – BentOnCoding
Đó là vấn đề, SQL có tên số ít ... và tôi đang cố gắng tìm ra lý do và cách khắc phục. –