public static void CreateDocumentLibrary(Guid documentLibraryId, string documentLibraryTitle) { LibrariesManager librariesManager = LibrariesManager.GetManager(); DocumentLibrary library = librariesManager.GetDocumentLibraries().Where(b => b.Id == documentLibraryId).FirstOrDefault(); if (library == null) { //Create the library. library = librariesManager.CreateDocumentLibrary(documentLibraryId); //Set the properties of the library. library.Title = documentLibraryTitle; library.DateCreated = DateTime.UtcNow; library.LastModified = DateTime.UtcNow; library.UrlName = FormatUrlName(documentLibraryTitle); //Save the changes. librariesManager.SaveChanges(); } }
public static Guid CreateDocumentNativeAPI(Stream documentStream, string fileExtension) { LibrariesManager librariesManager = LibrariesManager.GetManager(); librariesManager.Provider.SuppressSecurityChecks = true; WorkflowManager.GetManager().Provider.SuppressSecurityChecks = true; Guid documentId = Guid.Empty; try { var documentLibrary = librariesManager.GetDocumentLibraries().Where(x => x.Title == "Image requests uploaded").FirstOrDefault(); #region create document library //create document library if it doesnt exist if (documentLibrary == null) { documentLibrary = librariesManager.CreateDocumentLibrary(); documentLibrary.Title = "Image requests uploaded"; documentLibrary.DateCreated = DateTime.UtcNow; documentLibrary.LastModified = DateTime.UtcNow; documentLibrary.UrlName = Regex.Replace(documentLibrary.Title.ToLower(), @"[^\w\-\!\$\'\(\)\=\@\d_]+", "-"); //Recompiles and validates the url of the library. librariesManager.RecompileAndValidateUrls(documentLibrary); //Save the changes. librariesManager.SaveChanges(); } #endregion documentId = Guid.NewGuid(); var document = librariesManager.CreateDocument(documentId); document.Parent = documentLibrary; document.Title = "Resume-" + documentId.ToString(); document.DateCreated = DateTime.UtcNow; document.PublicationDate = DateTime.UtcNow; document.LastModified = DateTime.UtcNow; document.UrlName = Regex.Replace(document.Title.ToLower(), @"[^\w\-\!\$\'\(\)\=\@\d_]+", "-"); document.MediaFileUrlName = Regex.Replace((document.Title + fileExtension).ToLower(), @"[^\w\-\!\$\'\(\)\=\@\d_]+", "-"); //Upload the document file. librariesManager.Upload(document, documentStream, fileExtension); //Recompiles and validates the url of the document. librariesManager.RecompileAndValidateUrls(document); librariesManager.Lifecycle.Publish(document); //Save the changes. librariesManager.SaveChanges(); //Publish the DocumentLibraries item. The live version acquires new ID. var bag = new Dictionary <string, string>(); bag.Add("ContentType", typeof(Document).FullName); WorkflowManager.MessageWorkflow(documentId, typeof(Document), null, "Publish", false, bag); } catch (Exception ex) { Log.Write(ex, System.Diagnostics.TraceEventType.Error); return(documentId); } finally { librariesManager.Provider.SuppressSecurityChecks = false; WorkflowManager.GetManager().Provider.SuppressSecurityChecks = false; } return(documentId); }