Rodrigo Juarez escribió: > Hola a todos > > Necesito poder establecer en tiempo de ejecución cual es la tabla en un > archivo de mapeo > > Por ejemplo, en este mapping, asignar el valor de table cuando el programa > ya esta corriendo. > > <?xml version="1.0" encoding="utf-8" ?> > <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" > assembly="TiempoNet.Presupuesto.BO" namespace="TiempoNet.Presupuesto.BO"> > <class name="GestionMaestro" table="????"> > <id name="Cuenta" column="cuenta" type="Decimal" unsaved-value="0"> > <generator class="native"/> > </id> > <property column="descrip" type="String" name="Descrip" > length="30" /> > <property column="impu" type="Decimal" name="Impu" /> > <property column="nido" type="Decimal" name="CuentaPadre" /> > <bag name="PlanCuentaxGestionList" inverse="true" lazy="false"> > <key column="idgestion" /> > <one-to-many class="PlanCuentaxGestion" /> > </bag> > </class> > </hibernate-mapping> > > Adicionalmente, necesito poder abrir en forma simultanea dos instancias de > esta misma clase, cada una de ellas obteniendo los datos desde un table > diferente. ¿Deberia crear dos configuration separados? > > Estoy utilizando NHibernate 1.2 y Visual Studio 2005 con Visual Basic > > > Como me suena mal eso.... Poder se puede. Podes cargar el xml dinamicamente y agregarlo a la configuración con la limitación que la misma clase no se puede mapear en dos tablas distintas en una misma configuración. Eso implicaría trabajar con dos SessionFactory distintas.
Creo que la solución mejor (sin preguntarme para que necesitas eso) esté de otro lado. Lo que podes hacer es tener una clase GestionMaestro y otra clase GestionMaestroOtraTabla que hereda de GestionMaestro sin extenderla o sobreescribirla. En el mapping a NH no le haces saber que las dos clases tienen una relación de herencia o sea la mapeas como dos clases separadas. Eso funciona seguro y vos podes trabajar tipado en tu programa. Bye. Fabio. --~--~---------~--~----~------------~-------~--~----~ Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups-beta.google.com/group/NHibernate-Hispano -~----------~----~----~----~------~----~------~--~---
