Using database first model: Let's say we have the classic tables Student
, Course
and StudentCourse
(the latter obviously having FKs to Student
and Course
).
If you import this model to EF, you will get an object generated for each of them. The Student
and Course
classes will each have a collection of StudentCourses
, from which you need to jump another relationship to get to the Course
or Student
, respectively.
I would like to have the code generated in such a way that the underlying intersection table is invisible, i.e. Student
has a collection of Courses
, and Course
has a collection of Students
. I have seen this done in other ORM software (specifically, TopLink). Can it be done in EF?
According to this tutorial, you'll get the desired behaviour if your StudentCourse
table only contains the foreign-key columns. If it contains any other columns, EF will generate an intermediate entity to represent the join.
In this case, dropping the surrogate key from the StudentCourse
table and replacing it with a composite primary key should work.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With