Sitefinity CMS allows you to modify an event through the Events API.
When modifying an event, you must perform the following:
Get the master version.
Get the master version of the event. When you modify an event, you must not work on its live version.
Get a temp version.
Check out the master version to get a temp version of the event. This is the version you must modify.
Modify the temp version.
Use the temp version to modify the event.
Update the master version.
Check in the temp version to transfer the changes to the master version.
Update the live version.
Publish the master version to transfer the changes to the live version.
The examples below modify an event by the ID of its master version. For more information about working with the ID of the live version, see For developers: Edit content.
The following examples modify an event by the ID of its master version.
EventsManager eventsManager = EventsManager.GetManager();
// Get the master version
Event master = eventsManager.Lifecycle.GetMaster(@
// Check out the master to get a temp version
Event temp = eventsManager.Lifecycle.CheckOut(master)
// Make the modifications to the temp version
temp.Content = newContent;
// Check in the temp and get the updated master version.
// After the check in the temp version is deleted.
master = eventsManager.Lifecycle.CheckIn(temp)
// Publish the master
First, you get an instance of the EventsManager class. Then, you get the event corresponding to the ID. If the event exists, you get its master version by calling the Lifecycle.GetMaster method.
For more information about querying events, see For developers: Query events.
For more information about finding specific events, see For developers: Find events.
Then, you call Lifecycle.CheckOut with the master version as argument to get a temp version of the item. You modify the content of the temp version with newContent. Then, you call Lifecycle.CheckIn with the temp version as argument to transfer the changes to the master version. By default, calling the CheckIn method deletes the temp version. Then, you call Lifecycle.Publish with the master version as argument to transfer the changes to the live version. Finally, you call SaveChanges to save all changes.
count = 0;
// Check whether the item exists
App.WorkWith().Events().Where(ev => ev.Id == masterEventId).Count(
(count > 0)
// Use the singular facade to modify the master by the master ID
ev.Content = newContent;
ev.LastModified = DateTime.UtcNow;
First, you check whether an item with the specified ID exists. Then, you get the master version with the specified ID using the singular facade of the event.
NOTE: If there is no item with the specified Id, Event(masterEventId) throws an exception of type ItemNotFoundException.
To get a temp for the item, you use the CheckOut method of the facade. Then, you modify the content with newContent in the Do method of the temp facade. You call CheckIn to transfer the changes to the master version of the item. Then, you call Publish to transfer the changes to the live version. Finally, you call SaveChanges to save all changes.
Back To Top