Exemple #1
0
        public bool Update(IConnectionHandler connectionHandler, WebSite webSite, List <WebSiteAlias> webSiteAliases)
        {
            if (!this.Update(connectionHandler, webSite))
            {
                throw new Exception("خطا در ثبت اطلاعات");
            }
            var homaAliasBo = new WebSiteAliasBO();
            var list        = homaAliasBo.Where(connectionHandler, x => x.WebSiteId == webSite.Id);

            foreach (var homaAliase in webSiteAliases)
            {
                var homaAlias = homaAliasBo.Get(connectionHandler, homaAliase.Id);
                if (homaAlias == null)
                {
                    homaAliase.WebSiteId = webSite.Id;
                    homaAliase.WebSite   = webSite;
                    if (!homaAliasBo.Insert(connectionHandler, homaAliase))
                    {
                        throw new Exception("خطا در ثبت اطلاعات");
                    }
                }
                else
                {
                    homaAliase.WebSite = webSite;
                    if (!homaAliasBo.Update(connectionHandler, homaAliase))
                    {
                        throw new Exception("خطا در ثبت اطلاعات");
                    }
                }
            }
            foreach (var homaAliase in list)
            {
                if (webSiteAliases.Any(x => x.Id == homaAliase.Id))
                {
                    continue;
                }
                if (!homaAliasBo.Delete(connectionHandler, homaAliase.Id))
                {
                    throw new Exception("خطا در ثبت اطلاعات");
                }
            }

            return(true);
        }
Exemple #2
0
        public override bool Delete(IConnectionHandler connectionHandler,
                                    params object[] keys)
        {
            var obj         = this.Get(connectionHandler, keys);
            var siteAliasBo = new WebSiteAliasBO();
            var list        = siteAliasBo.Where(connectionHandler, x => x.WebSiteId == obj.Id);

            foreach (var homaAliase in list)
            {
                if (!siteAliasBo.Delete(connectionHandler, homaAliase.Id))
                {
                    throw new Exception("خطا در حذف اطلاعات");
                }
            }
            if (!base.Delete(connectionHandler, keys))
            {
                throw new Exception("خطا در حذف اطلاعات");
            }
            return(true);
        }