se me ocurre mas facil usar access=field para ese campo (no se si mapea a alguna de las tres opciones que diste Diego, asi que perdon si no te entendi)
en ese caso accedeas a CadenaConexion por la propiedad que devuelve el Decrypt, pero lo que mapeas es el field que no lo tocas y entonces no se detecta como dirty. Gustavo. 2010/4/5 Diego Mijelshon <[email protected]> > Sí, ese es el comportamiento esperado. > Si modificás cualquier propiedad persistente de una instancia persitente, > al hacer commit (en realidad, al hacer flush, pero por default el commit lo > hace) se realiza el update correspondiente. > Tenés varias opciones, entre ellas: > > - Utilizar una propiedad no persistente (lease, no mapeada) para > guardar el valor desencriptado > - No persistir el valor en la instancia (copiarlo en otro lado) > - Usar un UserType que encripte y desencripte en forma transparente el > persistir y recuperar el objeto > > > Diego > > > 2010/4/5 J. Roberto Ramírez <[email protected]> > > Buenos días, >> >> Ya creo haber leido sobre esto que voy a comentar, pero quiero >> confirmarlo... >> >> *session-per-request* >> >> Al inicio del request abro una nueva sesión y creo una nueva transacción, >> además en mi servicio hago lo siguiente: >> >> var session = GetCurrentSession() { >> var cliente = session.Get<Cliente>(id); >> //El cliente dentro de el tiene una propiedad que algun servicio lo >> encripto y lo guardó en la base de datos. >> //Desencriptamos la propiedad para trabajar con ella. >> cliente.CadenaConexion = Decrypt(cliente.CadenaConexion); >> ... >> >> Al finalizar el request cierro la sesión, hago commit de la transacción y >> unbind. >> >> Para mi sorpresa al finalizar el request, NH me hizo un update a la Base >> de Datos actualizando el valor de CadenaConexion. >> >> Este comportamiento es normal? existe manera de manejarlo? >> >> Gracias por la ayuda. >> >> >> -- >> J. Roberto Ramírez >> http://twitter.com/bobbher >> >> -- >> 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 > -- Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups.google.com/group/NHibernate-Hispano To unsubscribe, reply using "remove me" as the subject.
