public void QuitarVista(int p_Inmueble_OID, System.Collections.Generic.IList <int> p_vista_OIDs) { try { SesssionInitializeTransaction(); PersonalHomeGenNHibernate.EN.PersonalHome.InmuebleEN inmuebleEN = null; inmuebleEN = (InmuebleEN)session.Load(typeof(InmuebleEN), p_Inmueble_OID); EN.PersonalHome.VistaEN vistaEN = null; if (inmuebleEN.Vista != null) { foreach (int item in p_vista_OIDs) { vistaEN = (VistaEN)session.Load(typeof(VistaEN), item); if (inmuebleEN.Vista.Contains(vistaEN) == true) { inmuebleEN.Vista.Remove(vistaEN); } else { throw new ModelException("The identifier " + item + " in p_vista_OIDs you are trying to unrelationer, doesn't exist in InmuebleEN"); } } } session.Update(inmuebleEN); SessionCommit(); } catch (Exception ex) { SessionRollBack(); if (ex is ModelException) { throw ex; } throw new DataLayerException("Error in InmuebleCAD.", ex); } finally { SessionClose(); } }
public void AsignarVista(int p_Inmueble_OID, System.Collections.Generic.IList <int> p_vista_OIDs) { PersonalHomeGenNHibernate.EN.PersonalHome.InmuebleEN inmuebleEN = null; try { SesssionInitializeTransaction(); inmuebleEN = (InmuebleEN)session.Load(typeof(InmuebleEN), p_Inmueble_OID); PersonalHomeGenNHibernate.EN.PersonalHome.VistaEN vistaEN = null; if (inmuebleEN.Vista == null) { inmuebleEN.Vista = new System.Collections.Generic.List <EN.PersonalHome.VistaEN>(); } foreach (int item in p_vista_OIDs) { vistaEN = new EN.PersonalHome.VistaEN(); vistaEN = (EN.PersonalHome.VistaEN)session.Load(typeof(EN.PersonalHome.VistaEN), item); inmuebleEN.Vista.Add(vistaEN); } session.Update(inmuebleEN); SessionCommit(); } catch (Exception ex) { SessionRollBack(); if (ex is ModelException) { throw ex; } throw new DataLayerException("Error in InmuebleCAD.", ex); } finally { SessionClose(); } }