public override bool Delete(params object[] keys) { try { this.ConnectionHandler.StartTransaction(IsolationLevel.ReadUncommitted); this.FileManagerConnection.StartTransaction(IsolationLevel.ReadUncommitted); var obj = new ResourceBO().Get(this.ConnectionHandler, keys); if (obj.FileId != null) { FileManagerComponent.Instance.FileTransactionalFacade(this.FileManagerConnection).Delete(obj.FileId); } if (!new ResourceBO().Delete(this.ConnectionHandler, keys)) { throw new Exception(" خطایی در حذف resource وجود دارد"); } this.ConnectionHandler.CommitTransaction(); this.FileManagerConnection.CommitTransaction(); return(true); } catch (KnownException knownException) { this.ConnectionHandler.RollBack(); this.FileManagerConnection.RollBack(); throw new KnownException(knownException.Message, knownException); } catch (Exception ex) { this.ConnectionHandler.RollBack(); this.FileManagerConnection.RollBack(); throw new KnownException(ex.Message, ex); } }
public bool Update(Resource resource, HttpPostedFileBase resourceFile) { try { this.ConnectionHandler.StartTransaction(IsolationLevel.ReadUncommitted); this.FileManagerConnection.StartTransaction(IsolationLevel.ReadUncommitted); if (resourceFile != null) { var fileTransactionalFacade = FileManagerComponent.Instance.FileTransactionalFacade(this.FileManagerConnection); var lanuageContent = new ResourceBO().GetLanuageContent(base.ConnectionHandler, resource.CurrentUICultureName, resource.Id); if (!string.IsNullOrEmpty(lanuageContent.FileId)) { fileTransactionalFacade .Update(resourceFile, lanuageContent.FileId.ToGuid()); } else { resource.FileId = fileTransactionalFacade .Insert(resourceFile, new FileManager.DataStructure.File() { MaxSize = 200 }).ToString(); } } if (!new ResourceBO().Update(this.ConnectionHandler, resource)) { throw new Exception(" خطایی در ویرایش resource وجود دارد"); } this.ConnectionHandler.CommitTransaction(); this.ContentManagerConnection.CommitTransaction(); return(true); } catch (KnownException knownException) { this.ConnectionHandler.RollBack(); this.ContentManagerConnection.RollBack(); throw new KnownException(knownException.Message, knownException); } catch (Exception ex) { this.ConnectionHandler.RollBack(); this.ContentManagerConnection.RollBack(); throw new KnownException(ex.Message, ex); } }
public override bool Delete(Resource obj) { try { this.ConnectionHandler.StartTransaction(IsolationLevel.ReadUncommitted); this.FileManagerConnection.StartTransaction(IsolationLevel.ReadUncommitted); var fileTransactionalFacade = FileManagerComponent.Instance.FileTransactionalFacade(this.FileManagerConnection); var lanuageContent = new ResourceBO().GetLanuageContent(base.ConnectionHandler, obj.CurrentUICultureName, obj.Id); if (!string.IsNullOrEmpty(lanuageContent.FileId)) { fileTransactionalFacade.Delete(lanuageContent.FileId); } if (!new ResourceBO().Delete(this.ConnectionHandler, obj)) { throw new Exception(" خطایی در حذف resource وجود دارد"); } this.ConnectionHandler.CommitTransaction(); this.ContentManagerConnection.CommitTransaction(); return(true); } catch (KnownException knownException) { this.ConnectionHandler.RollBack(); this.ContentManagerConnection.RollBack(); throw new KnownException(knownException.Message, knownException); } catch (Exception ex) { this.ConnectionHandler.RollBack(); this.ContentManagerConnection.RollBack(); throw new KnownException(ex.Message, ex); } }
public string GetThemeResourceHtml(Guid themeId, string culture) { try { var str = new StringWriter(); var html32TextWriter = new Html32TextWriter(str); var byFilter = new ResourceBO().OrderBy(this.ConnectionHandler, x => x.Order, x => x.ThemeId == themeId && x.LanuageId == culture ); foreach (var resource in byFilter) { switch ((Enums.ResourceType)resource.Type) { case Enums.ResourceType.JSFile: if (resource.FileId == null) { continue; } html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Type, "text/javascript"); html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Src, FileManagerContants.FileHandlerRoot + resource.FileId); html32TextWriter.RenderBeginTag(HtmlTextWriterTag.Script); html32TextWriter.RenderEndTag(); break; case Enums.ResourceType.CssFile: if (resource.FileId == null) { continue; } html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Type, "text/css"); html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Rel, "stylesheet"); html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Href, FileManagerContants.FileHandlerRoot + resource.FileId); html32TextWriter.RenderBeginTag(HtmlTextWriterTag.Link); html32TextWriter.RenderEndTag(); break; case Enums.ResourceType.JSFunction: if (string.IsNullOrEmpty(resource.Text)) { continue; } html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Type, "text/javascript"); html32TextWriter.RenderBeginTag(HtmlTextWriterTag.Style); html32TextWriter.Write(resource.Text); html32TextWriter.RenderEndTag(); break; case Enums.ResourceType.Style: if (string.IsNullOrEmpty(resource.Text)) { continue; } html32TextWriter.RenderBeginTag(HtmlTextWriterTag.Style); html32TextWriter.Write(resource.Text); html32TextWriter.RenderEndTag(); break; } } return(str.ToString()); } catch (KnownException knownException) { throw new KnownException(knownException.Message, knownException); } catch (Exception ex) { throw new KnownException(ex.Message, ex); } }