When creating a document, you must perform the following:
Check whether the document already exists. Before you create the document, you must check whether a document with the same ID already exists.
ID
Create the document. If the document does not exist, you can create a new document with the specified ID.
Specify the parent document library of the document. Specify the library where the document belongs to.
Set the required properties. When creating a new document, set the following properties:
Title
LastModified
DateCreated
UrlName
MediaFileUrlName
Upload the document data. Upload the document data to the database.
Save the document. Save all changes that you have made to the document.
Publish the document. You publish the document using the workflow manager.
The example below shows you how to create a document with predefined ID.
NOTE: The ID argument is assigned to the master version of the document. For more information about the different versions of a document, see For developers: Content lifecycle.
EXAMPLE: Creating a document with predefined ID. The following code creates a document with the specified ID, Title and document data.
Native API
First, you get an instance of the LibrariesManager class. You check whether a document with the same ID already exists. Then, to create the document, you must call the CreateDocument method of the LibrariesManager class. You can create a document with either predefined or auto-generated ID depending which overload of the method you use. The method returns the master version of the document. Then, you get an instance of the specified parent document library. To associate the document with the document library, you set the document library to the Parent property of the document object. Then, you set the properties of the master version. We recommend to set at least the following properties: Title, UrlName, LastModified, PublicationDate, DateCreated, MediaFileUrlName. Then, to upload the document data, you call the Upload method of the LibrariesManager class and pass the stream of the selected file as parameter. To save the changes, you call the SaveChanges method of the manager. Finally, to publish the document, you call the MessageWorkflow method of the WorkflowManager class and pass the required parameters.
LibrariesManager
CreateDocument
Parent
document
PublicationDate
Upload
SaveChanges
MessageWorkflow
WorkflowManager
Fluent API
First, you check whether a document with the same ID already exists. Then, you check whether the specified parent document library exists. If it exists you get the singular document library facade of the parent document library. To create the document, you call the CreateDocument method of the facade. The ID argument is assigned to the ID property of the master version of the item. You check out the item. Then, you set the properties of the document by calling the Do method of the facade. To upload the document data, you call the UploadContent method of the facade and pass the document, the stream of the selected file, and its extension as arguments. To check in the document, you call the CheckIn method of the facade. Then, you save the changes. Finally, to publish the document, you call the MessageWorkflow method of the WorkflowManager class and pass the required parameters.
Do
UploadContent
CheckIn
Increase your Sitefinity skills by signing up for our free trainings. Get Sitefinity-certified at Progress Education Community to boost your credentials.
This free lesson teaches administrators, marketers, and other business professionals how to use the Integration hub service to create automated workflows between Sitefinity and other business systems.
This free lesson teaches administrators the basics about protecting yor Sitefinity instance and its sites from external threats. Configure HTTPS, SSL, allow lists for trusted sites, and cookie security, among others.
The free on-demand video course teaches developers how to use Sitefinity .NET Core and leverage its decoupled architecture and new way of coding against the platform.
To submit feedback, please update your cookie settings and allow the usage of Functional cookies.
Your feedback about this content is important