Пример #1
0
        public void QuitarFamiliaPack(int p_Pack_OID, System.Collections.Generic.IList <int> p_familiaPack_OIDs)
        {
            try
            {
                SesssionInitializeTransaction();
                PersonalHomeGenNHibernate.EN.PersonalHome.PackEN packEN = null;
                packEN = (PackEN)session.Load(typeof(PackEN), p_Pack_OID);

                EN.PersonalHome.FamiliaPackEN familiaPackEN = null;
                if (packEN.FamiliaPack != null)
                {
                    foreach (int item in p_familiaPack_OIDs)
                    {
                        familiaPackEN = (FamiliaPackEN)session.Load(typeof(FamiliaPackEN), item);
                        if (packEN.FamiliaPack.Contains(familiaPackEN) == true)
                        {
                            packEN.FamiliaPack.Remove(familiaPackEN);
                        }
                        else
                        {
                            throw new ModelException("The identifier " + item + " in p_familiaPack_OIDs you are trying to unrelationer, doesn't exist in PackEN");
                        }
                    }
                }

                session.Update(packEN);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is ModelException)
                {
                    throw ex;
                }
                throw new DataLayerException("Error in PackCAD.", ex);
            }


            finally
            {
                SessionClose();
            }
        }
Пример #2
0
        public void AsignarFamiliaPack(int p_Pack_OID, System.Collections.Generic.IList <int> p_familiaPack_OIDs)
        {
            PersonalHomeGenNHibernate.EN.PersonalHome.PackEN packEN = null;
            try
            {
                SesssionInitializeTransaction();
                packEN = (PackEN)session.Load(typeof(PackEN), p_Pack_OID);
                PersonalHomeGenNHibernate.EN.PersonalHome.FamiliaPackEN familiaPackEN = null;
                if (packEN.FamiliaPack == null)
                {
                    packEN.FamiliaPack = new System.Collections.Generic.List <EN.PersonalHome.FamiliaPackEN>();
                }

                foreach (int item in p_familiaPack_OIDs)
                {
                    familiaPackEN = new EN.PersonalHome.FamiliaPackEN();
                    familiaPackEN = (EN.PersonalHome.FamiliaPackEN)session.Load(typeof(EN.PersonalHome.FamiliaPackEN), item);
                    packEN.FamiliaPack.Add(familiaPackEN);
                }


                session.Update(packEN);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is ModelException)
                {
                    throw ex;
                }
                throw new DataLayerException("Error in PackCAD.", ex);
            }


            finally
            {
                SessionClose();
            }
        }