Estoy evaluando el uso de EF en un esquema existente - el problema es que no puedo resolver cómo configurar asociaciones entre tablas donde la clave externa NO es la clave principal de la mesa maestraCómo administrar claves "secundarias" en Entity Framework
A modo de ejemplo, un foo
puede tener muchas bars
como se define como esto (valga la pseudocódigo):
table foo {
int foo\_id pk,
char(10) foo\_code,
...
}
table foobar {
int bar\_id pk,
char(10) bar\_foo\_code fk(foo.foo\_code),
...
}
¿Qué me falta para ser capaz de crear la asociación foo_foobar
, y por lo tanto una propiedad Bars
de navegación en la entidad Foo
?
Tuvimos los mismos problemas aquí y al final tuvimos que realizar cambios en nuestra base de datos para que las claves externas solo apuntaran a las claves principales. ¿No hay forma de que puedas cambiar tu esquema de base de datos? – CraftyFella
Desafortunadamente no, el esquema es una pesadilla por razones heredadas, y tenemos que interoperar con él. Apesta, lo sé. Dicho esto, he visto casos en los que es totalmente correcto tener una clave principal Y una clave externa separada (posiblemente compuesta). – Rammesses