POCO One-To-One, micro ORM. ¿Debo almacenar ref id o solo ref object?

dapper domain-driven-design micro-orm poco repository

Pregunta

¿Debo guardar la identificación de referencia para el niño Poco o solo el objeto de referencia en el Modelo al usar micro ORM como Dapper (en Repositorio)? Creo que si almaceo ambos habrá un problema de sincronización al actualizar el objeto raíz.

Por ejemplo:

Class Boat
    +Id
    +LakeId
    +Lake

Class Lake
    +Id
    +Name

¿Qué pasa si algunos cambios LakeId? Lake estará en estado inválido! ¿Qué pasa si alguien cambia Lake y vive LakeId? LakeId estará en estado inválido.

Creo que la sincronización de esas dos propiedades será una complejidad innecesaria adicional. Cambiar LakeId requerirá obtener un nuevo lago poco de db.

¿Cómo manejas esto en tus proyectos (solo usando micro ORM como Dapper o PetaPoco)?

Respuesta popular

Cualquier microorma es solo un mapeador de datos con esteroides. No importa qué SQL escriba, solo intenta asignar el resultado de la consulta a un objeto. Cualquier ayuda de inserción / actualización simplemente facilita la operación sin interferir con sql.

Sus preocupaciones no tienen nada que ver con el microordenador. Simplemente tiene que poner una restricción de clave externa en Lake Id. Realmente no entiendo por qué tienes tanto LakeId como Lake en Boat. Primero debe obtener el esquema db, luego el objeto (POCO) que necesita para mapear el resultado de la consulta.



Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué