Hola! Necesito algo de ayuda.
Tengo un modelo parent-child típico (Operaciones tienen muchos Procedimientos).
Realizo una consulta de Operaciones, pero obtengo una Operación
por cada Procedimiento.
Es decir, si tengo
14 Operaciones y
45 Procedimientos, obtengo
45 objetos Operacion:
Operacion 1 contiene 2 Procedimientos;
Operacion 1 contiene 2 Procedimientos;
Operacion 2 contiene contiene 4 Procedimientos;
Operacion 2 contiene contiene 4 Procedimientos;
Operacion 2 contiene contiene 4 Procedimientos;
Operacion 2 contiene contiene 4 Procedimientos;
Operacion 3...;
Cada Operacion contiene una lista de Procedimientos bien mapeada. No entiendo por qué se repiten los objetos. A continuación, muestro la info importante:
Code between sessionFactory.openSession() and session.close():
ICriteria icOperaciones = isession.CreateCriteria(typeof(Operacion));
IList<Operacion> j = icOperaciones.List<Operacion>();
Hibernate version: 1.2
Mapping documents:
Code:
Operacion.hbm.xml
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping...>
<class name="Operacion" table="[desarrollo].[dbo].[OperCapac_Operaciones]">
<id name="Id_Operacion" column="id_operacion" type="int"><generator class="assigned"/></id>
<bag name="ListaProcedimientos" table="OperCapac_Procedimientos" inverse="true" fetch="join" cascade="all">
<key column="id_operacion"/>
<one-to-many class="Procedimiento"/>
</bag> </class>
</hibernate-mapping>
Code:
Procedimiento.hbm.xml
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping ...>
<class name="Procedimiento" table="[desarrollo].[dbo].[OperCapac_Procedimientos]">
<!-- Propiedades -->
<id name="Id_procedimiento" column="id_procedimiento" type="int"><generator class="assigned"/></id>
<many-to-one name="Operacion" column="id_operacion" not-null="true" cascade="all-delete-orphan"/>
</class>
</hibernate-mapping>
Name and version of the database you are using:
SQL Server 2005
Se agradecen todas las sugerencias.