Chúng tôi đang học Khuôn khổ thực thể 6.1 (từ NuGet) khi chúng tôi di chuyển ra khỏi Linq2Sql. Chúng tôi có một số ít các bảng kết hợp hai bảng riêng biệt như được hiển thị bên dưới.Khuôn khổ thực thể 6 - Bảng thiếu chỉ có các khóa chính tham chiếu các bảng khác nhau
EF6 Cơ sở dữ liệu thế hệ đầu tiên
DB Diagram:
Schema Tổng quan:
Khi trong studio Visual, thư viện lớp trống, thực hiện một cơ sở dữ liệu đầu tiên EF6 Tệp EDMX, sơ đồ chỉ tạo TableA và TableC - TableB không được tạo ra.
Visual Studio Xem:
Bạn có thể thấy rằng chỉ TableA và TableC được tạo ra. Về mặt kỹ thuật, TableB đã được tạo ra, bởi vì bạn sẽ muốn có thể quản lý các tham chiếu đó.
Hiệp hội giữa A và C thể hiện trong sơ đồ:
tôi cảm thấy như tôi đang thiếu một lựa chọn, hoặc hiểu lầm một khái niệm then chốt của Entity Framework. Bất kỳ ý tưởng làm thế nào để có TableB thiếu tạo ra với T4? Tệp EDMX không hiển thị nó, nhưng vì một số lý do nó không được tạo ra thành tệp .CS với hai thuộc tính cho biết mối quan hệ.
Lý do chính chúng tôi cần điều này là chúng tôi đã mở rộng mẫu EF6 T4 để thêm một số mẫu nhà máy để phù hợp với các mô hình hiện có của chúng tôi. Bởi vì nó không tạo ra một lớp cho TableB, chúng ta không nhận được mã được tạo tự động mà chúng ta đang tìm kiếm.
Suy nghĩ/đề xuất? Cảm ơn.
EF có thể hiểu rằng TableB không có ý nghĩa riêng và chỉ dành cho mối quan hệ nhiều-nhiều? – Disappointed