When creating an image, you must perform the following:
Check whether the image already exists.
Before you create the image, you must check whether an image with the same ID already exists.
Create the image.
If the image does not exist, you create a new image with the specified ID.
Specify the parent album of the image.
Specify to which album the image belongs.
Set the required properties.
When creating a new image, it is recommended to set at least the following properties:
You can also set any other properties in this step.
Upload the image data.
Upload the image data to the database.
Save the image.
Save all changes that you have made to the image.
Publish the image.
Finally, you publish the image using the workflow manager.
The example below shows you how to create an image with predefined ID.
NOTE: The ID argument is assigned to the master version of the image. For more information about the different versions of an image, see For developers: Content lifecycle.
The following code creates an image with the specified ID, Title and image data.
CreateImageNativeAPI(Guid masterImageId, Guid parentAlbumId,
imageTitle, Stream imageStream,
LibrariesManager librariesManager = LibrariesManager.GetManager();
Image image = librariesManager.GetImages().Where(i => i.Id == masterImageId).FirstOrDefault();
//The album post is created as master. The masterImageId is assigned to the master version.
image = librariesManager.CreateImage(masterImageId);
//Set the parent album.
Album album = librariesManager.GetAlbums().Where(i => i.Id == parentAlbumId).SingleOrDefault();
image.Parent = album;
//Set the properties of the album post.
image.Title = imageTitle;
image.DateCreated = DateTime.UtcNow;
image.PublicationDate = DateTime.UtcNow;
image.LastModified = DateTime.UtcNow;
image.UrlName = Regex.Replace(imageTitle.ToLower(), @
//Upload the image file.
librariesManager.Upload(image, imageStream, imageExtension);
//Save the changes.
//Publish the Albums item. The live version acquires new ID.
var bag =
First, you get an instance of the LibrariesManager class. You check whether an image with the same ID already exists. Then, to create the image, you must call the CreateImage method of the LibrariesManager class. You can create an image with either predefined or auto-generated ID depending on which overload of the method you use. The method returns the master version of the image. Then, you get an instance of the specified parent album. To associate the image with the album, you set the album to the Parent property of the image object. Then, you set the properties of the master version of the image. It is recommended to set at least the following properties: Title,UrlName, LastModified, PublicationDate, DateCreated. Then, to upload the image data, you call the Upload method of theLibrariesManager class and pass the master version of the image, the stream of the selected file and its file extension as parameters. To save the changes, you call the SaveChanges method of the manager. Finally, to publish the image, you call the MessageWorkflow method of the WorkflowManager class and pass the required parameters.
Guid CreateImageFluentAPI(Guid imageId, Guid parentAlbumId,
//Check whether the parent Album exists.
var count = 0;
imageId = Guid.NewGuid();
App.WorkWith().Albums().Where(i => i.Id == parentAlbumId).Count(
(count > 0)
//Set the properties.
imageId = image.Id;
//Publish the album post. The live version acquires new ID.
First, you check whether an image with the same ID already exists. Then, you check whether the specified parent album exists. If it exists you get the singular album facade of the parent album. To create the image, you call the CreateImage method of the singular album 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 image by calling the Do method of the facade. To upload the image data, you call the UploadContent method of the facade and pass the image, the stream of the selected file and its extension as arguments. To check in the image, you call the CheckInmethod of the facade. Then, you save the changes. Finally, to publish the image in live state, you call the MessageWorkflow method of theWorkflowManager class and pass the required parameters.
Back To Top
To submit feedback, please update your cookie settings and allow the usage of Functional cookies.
Your feedback about this content is important
Copyright © 2020 Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.
Progress, Telerik, Ipswitch, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks for appropriate markings.
Powered by Progress Sitefinity