public IEnumerable <FAQ.DataStructure.FAQ> GetByWebSiteId(Guid websiteId) { try { var list = new List <FAQ.DataStructure.FAQ>(); var faqFacade = FAQComponent.Instance.FAQFacade; var byFilter = new FAQBO().Where(this.ConnectionHandler, html => html.WebId == websiteId); foreach (var congressHtml in byFilter) { var html = faqFacade.Get(congressHtml.FAQId); if (html == null) { continue; } list.Add(html); } return(list); } catch (KnownException knownException) { throw new KnownException(knownException.Message, knownException); } catch (Exception ex) { throw new KnownException(ex.Message, ex); } }
public IEnumerable <FAQ.DataStructure.FAQ> Search(Guid websiteId, string value) { try { var list = new List <FAQ.DataStructure.FAQ>(); var faqFacade = FAQComponent.Instance.FAQFacade.Search(value); var congressFaqbo = new FAQBO(); foreach (var congressHtml in faqFacade) { var html = congressFaqbo.Get(this.ConnectionHandler, websiteId, congressHtml.Id); if (html == null) { continue; } list.Add(congressHtml); } return(list); } catch (KnownException knownException) { throw new KnownException(knownException.Message, knownException); } catch (Exception ex) { throw new KnownException(ex.Message, ex); } }
public override bool Delete(params object[] keys) { try { this.ConnectionHandler.StartTransaction(IsolationLevel.ReadUncommitted); this.FaqConnection.StartTransaction(IsolationLevel.ReadUncommitted); var congressFaqbo = new FAQBO(); var obj = congressFaqbo.Get(this.ConnectionHandler, keys); if (!congressFaqbo.Delete(this.ConnectionHandler, keys)) { throw new Exception("خطایی در حذف FAQ وجود دارد"); } if (!FAQComponent.Instance.FAQTransactionalFacade(this.FaqConnection).Delete(obj.FAQId)) { throw new Exception("خطایی در حذف FAQ وجود دارد"); } this.ConnectionHandler.CommitTransaction(); this.FaqConnection.CommitTransaction(); return(true); } catch (KnownException knownException) { this.ConnectionHandler.RollBack(); this.FaqConnection.RollBack(); throw new KnownException(knownException.Message, knownException); } catch (Exception ex) { this.ConnectionHandler.RollBack(); this.FaqConnection.RollBack(); throw new KnownException(ex.Message, ex); } }
public override bool Delete(params object[] keys) { try { this.ConnectionHandler.StartTransaction(IsolationLevel.ReadUncommitted); this.FileManagerConnection.StartTransaction(IsolationLevel.ReadUncommitted); var faq = new FAQBO().Get(this.ConnectionHandler, keys); if (faq == null) { return(true); } var list = new FAQContentBO().Where(this.ConnectionHandler, content => content.Id == faq.Id); foreach (var content in list) { if (!new FAQContentBO().Delete(this.ConnectionHandler, content.Id, content.LanguageId)) { throw new Exception("خطایی در حذف محتوا وجود دارد"); } } if (faq.ThumbnailId.HasValue) { if ( !FileManagerComponent.Instance.FileTransactionalFacade(this.FileManagerConnection) .Delete(faq.ThumbnailId.Value)) { throw new Exception("Could not delete Thumbnail."); } } if (!new FAQBO().Delete(this.ConnectionHandler, keys)) { throw new Exception("خطایی در حذف محتوا وجود دارد"); } this.ConnectionHandler.CommitTransaction(); this.FileManagerConnection.CommitTransaction(); return(true); } catch (KnownException ex) { this.ConnectionHandler.RollBack(); this.FileManagerConnection.RollBack(); Log.Save(ex.Message, LogType.ApplicationError, ex.Source, ex.StackTrace); throw new KnownException(ex.Message, ex); } catch (Exception ex) { this.ConnectionHandler.RollBack(); this.FileManagerConnection.RollBack(); Log.Save(ex.Message, LogType.ApplicationError, ex.Source, ex.StackTrace); throw new KnownException(ex.Message, ex); } }