public void QuitarTipoEstancia(int p_FamiliaPack_OID, System.Collections.Generic.IList <int> p_tipoEstancia_OIDs) { try { SesssionInitializeTransaction(); PersonalHomeGenNHibernate.EN.PersonalHome.FamiliaPackEN familiaPackEN = null; familiaPackEN = (FamiliaPackEN)session.Load(typeof(FamiliaPackEN), p_FamiliaPack_OID); EN.PersonalHome.TipoEstanciaEN tipoEstanciaEN = null; if (familiaPackEN.TipoEstancia != null) { foreach (int item in p_tipoEstancia_OIDs) { tipoEstanciaEN = (TipoEstanciaEN)session.Load(typeof(TipoEstanciaEN), item); if (familiaPackEN.TipoEstancia.Contains(tipoEstanciaEN) == true) { familiaPackEN.TipoEstancia.Remove(tipoEstanciaEN); } else { throw new ModelException("The identifier " + item + " in p_tipoEstancia_OIDs you are trying to unrelationer, doesn't exist in FamiliaPackEN"); } } } session.Update(familiaPackEN); SessionCommit(); } catch (Exception ex) { SessionRollBack(); if (ex is ModelException) { throw ex; } throw new DataLayerException("Error in FamiliaPackCAD.", ex); } finally { SessionClose(); } }
public void AsignarTipoEstancia(int p_FamiliaPack_OID, System.Collections.Generic.IList <int> p_tipoEstancia_OIDs) { PersonalHomeGenNHibernate.EN.PersonalHome.FamiliaPackEN familiaPackEN = null; try { SesssionInitializeTransaction(); familiaPackEN = (FamiliaPackEN)session.Load(typeof(FamiliaPackEN), p_FamiliaPack_OID); PersonalHomeGenNHibernate.EN.PersonalHome.TipoEstanciaEN tipoEstanciaEN = null; if (familiaPackEN.TipoEstancia == null) { familiaPackEN.TipoEstancia = new System.Collections.Generic.List <EN.PersonalHome.TipoEstanciaEN>(); } foreach (int item in p_tipoEstancia_OIDs) { tipoEstanciaEN = new EN.PersonalHome.TipoEstanciaEN(); tipoEstanciaEN = (EN.PersonalHome.TipoEstanciaEN)session.Load(typeof(EN.PersonalHome.TipoEstanciaEN), item); familiaPackEN.TipoEstancia.Add(tipoEstanciaEN); } session.Update(familiaPackEN); SessionCommit(); } catch (Exception ex) { SessionRollBack(); if (ex is ModelException) { throw ex; } throw new DataLayerException("Error in FamiliaPackCAD.", ex); } finally { SessionClose(); } }