public override bool Insert(MenuHtml MenuHtml) { try { this.ConnectionHandler.StartTransaction(IsolationLevel.ReadUncommitted); var MenuHtmlBO = new MenuHtmlBO(); if (MenuHtml.Enabled) { var list = MenuHtmlBO.Where(this.ConnectionHandler, html => html.IsExternal == false); foreach (var html in list) { html.Enabled = false; if (!MenuHtmlBO.Update(this.ConnectionHandler, html)) { throw new Exception("خطایی در ویرایش Html وجود دارد"); } } } if (!MenuHtmlBO.Insert(this.ConnectionHandler, MenuHtml)) { throw new Exception("خطایی در ذخیره HTML وجود دارد"); } this.ConnectionHandler.CommitTransaction(); return(true); } catch (KnownException ex) { this.ConnectionHandler.RollBack(); Log.Save(ex.Message, LogType.ApplicationError, ex.Source, ex.StackTrace); throw new KnownException(ex.Message, ex); } catch (Exception ex) { this.ConnectionHandler.RollBack(); Log.Save(ex.Message, LogType.ApplicationError, ex.Source, ex.StackTrace); throw new KnownException(ex.Message, ex); } }
public override bool Delete(params object[] keys) { try { this.ConnectionHandler.StartTransaction(IsolationLevel.ReadUncommitted); this.ContentManagerConnection.StartTransaction(IsolationLevel.ReadUncommitted); var CongressMenuHtmlBO = new MenuHtmlBO(); var obj = CongressMenuHtmlBO.Get(this.ConnectionHandler, keys); if (!CongressMenuHtmlBO.Delete(this.ConnectionHandler, keys)) { throw new Exception("خطایی در حذف Html همایش وجود دارد"); } if ( !ContentManagerComponent.Instance.MenuHtmlTransactinalFacade(this.ContentManagerConnection) .Delete(obj.MenuHtmlId)) { throw new Exception("خطایی در حذف Html وجود دارد"); } this.ConnectionHandler.CommitTransaction(); this.ContentManagerConnection.CommitTransaction(); return(true); } catch (KnownException ex) { this.ConnectionHandler.RollBack(); this.ContentManagerConnection.RollBack(); Log.Save(ex.Message, LogType.ApplicationError, ex.Source, ex.StackTrace); throw new KnownException(ex.Message, ex); } catch (Exception ex) { this.ConnectionHandler.RollBack(); this.ContentManagerConnection.RollBack(); Log.Save(ex.Message, LogType.ApplicationError, ex.Source, ex.StackTrace); throw new KnownException(ex.Message, ex); } }