dynamic-componets or dynamic-entities or schema-less-component 2010/11/23 tolemaC <[email protected]>
> Nestor el usuario se define sus propios campos para cada tipo de > expediente, tengo una tabla TipoExpediente con su Id, su Nombre y > Descripción, el usuario puede crear nuevos tipos. Luego tengo la tabla > de Expedientes donde hay un campo IdTipo, al crear el expediente el > usuario selecciona un tipo. Entonces a la hora de editar dicho > expediente hay unos datos adicionales que se asocian al tipo en > concreto que el usuario a creado. > > Para hacer "table per hierarchy" debería prever todos los tipos que el > usuario se puede crear, eso es inviable. > > Lo único que se me ocurre es montarme un EAV (Entidad Atributo Valor) > por un lado crearme una tabla con la descripción de los datos > asociados al tipo con: IdTipo, NombreCampo > Y por otro lado una tabla para almacenar los valores con: Id > Expediente, Nombre Campo, Valor > > Miraré otra vez el dynamic-component, pero por lo que he visto > necesitas conocer cuales serán los campos. > > > On 23 nov, 20:16, Nestor Rodriguez <[email protected]> wrote: > > Aunque no entiendo del todo tu problema sobre todo cuando dices: > > *"No me vale el tener que crear una entidad Expediente para cada "Tipo > > de Expediente"*" > > Te recomiendo que verifiques si un dynamic-component se aplica a tu caso > > donde las propiedades dinamicas son guardadas en un diccionario y en la > BD > > son columnas de la tabla. Sin embargo creo que si tienes diferentes > tipos > > de expedientes deberias tenerlos como clases que extienden de una > abstracta > > o interfaz TipoExpediente y mapearlo en una herencia "table per > hierarchy". > > > > Saludos, > > Nestor Rodriguez > > > > 2010/11/23 tolemaC <[email protected]> > > > > > > > > > > > > > > > > > Hola de nuevo. > > > > > Tengo algo en mente que no tengo muy claro como plantearlo para > > > trabajar con NHibernate y me gustaría me diesen su opinión. > > > > > Tengo un caso donde me haría falta que ciertas entidades tuvieran > > > campos dinámicos. > > > > > Por ejemplo en mi aplicación hay una entidad para los Expedientes, > > > dichos expedientes tienen una propiedad que es el "Tipo de Expediente" > > > y los usuarios son libres de crear los tipos de expedientes que > > > quieran. Aquí es donde surge una particularidad, resulta que cada tipo > > > de expediente que los usuarios se crean pueden tener unos datos > > > adicionales, por ejemplo un expediente de tipo "Obra o servicio" tiene > > > campos adicionales como es el "Contratista" que realiza la obra o > > > servicio, un expediente de tipo "Sanción a empleado" tiene un dato > > > asociado que es el Empleado sancionado, ... y así sucesivamente. > > > > > No me vale el tener que crear una entidad Expediente para cada "Tipo > > > de Expediente", pues el usuario debe poder crearse nuevos tipos de > > > expediente cuando quiera sin mi intervención y ademas al tipo de > > > expediente le debe poder relacionar esos datos/campos/propiedades > > > extra. > > > > > Se os ocurre como plantear este tema usando NHibernate? > > > > > -- > > > Para escribir al Grupo, hágalo a esta dirección: > > > [email protected] > > > Para más, visite:http://groups.google.com/group/NHibernate-Hispano > > -- > Para escribir al Grupo, hágalo a esta dirección: > [email protected] > Para más, visite: http://groups.google.com/group/NHibernate-Hispano > -- Fabio Maulo -- Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups.google.com/group/NHibernate-Hispano
