Me gustaría saber si hay una manera de deshabilitar la carga automática de registros secundarios en nHibernate (para uno: muchas relaciones).nhibernate - deshabilitar la carga automática lazy de registros secundarios de una a muchas relacionesih
Podemos desactivar fácilmente la carga diferida en las propiedades, pero lo que quiero es deshabilitar cualquier tipo de carga automática (lazy y no lazy ambos). Solo quiero cargar datos mediante consulta (es decir, HQL o Criteria)
Aún me gustaría definir la relación entre los registros hijo primarios en el archivo de asignación para facilitar HQL y ser capaz de unir entidades secundarias parentales, pero no lo hago quiere que los registros secundarios se carguen como parte del registro principal, a menos que una consulta en el registro principal establezca explícitamente que (a través de la búsqueda ansiosa, etc.).
Ejemplo: Obteniendo el registro del departamento de la base de datos no debe buscar todos los registros de los empleados de la base de datos porque puede que nunca sea necesario.
Una opción aquí es establecer la colección de Empleados en el Departamento como carga diferida. El problema con este enfoque es que una vez que el objeto se asigna a la API que realiza la llamada, puede "tocar" la propiedad de carga diferida y eso obtendrá la lista completa de la base de datos.
Intenté usar 'evict' - para desconectar el objeto pero no parece funcionar en todo momento y no hace un desalojo profundo del objeto. Además, abstrae el tipo de propiedad de carga diferida con una clase de proxy que causa estragos más adelante en el código donde estamos tratando de operar en el objeto a través de la reflexión y encuentra el tipo no utilizado en el objeto.
Soy un principiante de nHibernate, cualquier puntero o ayuda sería de gran ayuda.
Usted tiene un error tipográfico: disbale -> desactivar – Anthony