Save es save. Save or update es save + attach de entity si no pertenece a esta session (eso es Update en nh). Persist es save + save de todas las relaciones que no estan persistidas a diferencia Save solo da un exception al guardar una factura, si factura.Cliente es transient (no esta persistido). Update significa attach de la entity a la sesion, no tiene nada que ver con generar un update a la base. Ningun metodo de estos hace un flush a menos que la entidad tenga como POID identity.
El 26/11/10, Angel Java Lopez <[email protected]> escribió: > Hola gente! > > Edgar, encontre esto, espero te sirva: > http://stackoverflow.com/questions/1150854/saveorupdate-vs-update-and-save-in-nhibernate > > Explicado en el manual > http://www.nhforge.org/doc/nh/en/index.html#manipulatingdata > como distingue entre un objeto nuevo o ya existente en el SaveOrUpdate (que > permite grabar un objeto que no estaba o que ya estaba en la base, Save va > contra objetos nuevos). > > El Persist, algo explicado en: > http://weblogs.asp.net/ricardoperes/archive/2010/05/18/lesser-known-nhibernate-session-methods.aspx > *Persist*: similar to Save or SaveOrUpdate, attaches a maybe new entity to > the session, but does not generate an INSERT or UPDATE immediately and thus > the entity does not get a database-generated id, it will only get it at > flush time; > > Al parecer, la diferencia es cuando la entidad tiene un id generado por la > base: Persist no lo genera, lo posterga hasta el momento del flush de todo. > > Es asi? > > Nos leemos! > > Angel "Java" Lopez > http://www.ajlopez.com > http://twitter.com/ajlopez > > > 2010/11/26 Edgar Ramos <[email protected]> > >> Gente un saludo >> >> Estoy por utilizar nh3, y se me planteo la siguiente duda, tengo los >> siguientes metodos >> >> Save(), SaveOrUpdate(), Persist() >> >> Cuales son sus similitudes o diferencias ?, agradecería si me lo >> explicarán >> con un ejemplo >> >> Gracias por su tiempo y sus comentarios >> >> >> Saludos >> >> Edgar >> >> -- >> 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 -- Enviado desde mi dispositivo móvil -- Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups.google.com/group/NHibernate-Hispano
