Xoay Pluralization On
. Vấn đề là bạn mô hình đối tượng đang sử dụng tên số ít (Pupil
) quy ước, trong khi trong cơ sở dữ liệu của bạn, bạn đang sử dụng tên số nhiều Pupils
với s
.
CẬP NHẬT
post Điều này cho thấy làm thế nào bạn có thể bật hoặc tắt. Một số trích đoạn liên quan của bài rằng:
Để bật pluralization và tắt
Trên các Công cụ trình đơn, nhấp vào Tuỳ chọn.
Trong hộp thoại Tùy chọn, mở rộng Công cụ cơ sở dữ liệu. Lưu ý: Chọn Hiển thị tất cả cài đặt nếu nút Công cụ cơ sở dữ liệu không hiển thị.
Nhấp vào O/R Designer.
Đặt số nhiều tên thành Đã bật = False để đặt trình thiết kế O/R sao cho không thay đổi tên lớp.
Set ngữ pháp số nhiều tên để Enabled = True để áp dụng quy tắc pluralization với tên lớp của các đối tượng được bổ sung vào O/R Designer.
UPDATE 2
Nhưng lưu ý rằng, bạn nên tránh tên số nhiều. Bạn có thể đọc here cách thực hiện (tôi sẽ trích dẫn ở đây, chỉ trong trường hợp liên kết bị hỏng).
(...) Khi bạn làm việc với Entity Framework Code Cách tiếp cận đầu tiên, bạn đang tạo các bảng cơ sở dữ liệu từ các lớp mô hình của mình. Thường thì Entity Framework sẽ tạo ra các bảng có tên Pluralized. điều đó có nghĩa là nếu bạn có một lớp mô hình được gọi là PhoneNumber, khung Entity sẽ tạo một bảng cho lớp này được gọi là "PhoneNumbers". Nếu bạn muốn tránh tên số nhiều và muốn tên số ít như Khách hàng, bạn có thể làm như thế này Trong lớp DBContext của bạn, Ghi đè phương thức “OnModelCreating” như thế này (...)
(...) Có Method Overriding này sẽ tránh tạo ra bảng với tên số nhiều. Bây giờ nó sẽ tạo ra một Bảng gọi là "PhoneNumber", Không phải "PhoneNumbers" (...)
Nguồn
2014-06-13 23:08:14
Lỗi bên trong là gì? – TheNorthWes
'Xem Ngoại lệ bên trong để biết chi tiết 'có nghĩa là những gì nó nói. Bạn đang gọi một đối tượng 'dbo.Pupils' không tồn tại. Bạn có EF đa dạng hóa các bảng của bạn cho bạn? Nếu vậy, bảng EF có thể là một cái gì đó kỳ lạ như "Học sinh". Thông thường, bảng cơ sở dữ liệu là số ít và EF được số nhiều. Và có 'dbo' trước mặt nó cũng rất kỳ quặc. – paqogomez
Chuỗi kết nối của bạn có được thiết lập đúng cách để trỏ đến cơ sở dữ liệu đó không? Mã của bạn để ánh xạ các lớp của bạn tới cơ sở dữ liệu ở đâu? Vui lòng đăng mã và lưu ảnh chụp màn hình cho các dấu hiệu trực quan về những gì đang xảy ra. Chỉ cần sao chép và dán chi tiết Ngoại lệ của bạn sẽ là tốt thay vì ảnh chụp màn hình của cửa sổ đó. – krillgar