Delete a content block with the Native API

To delete a specific content block with the Native API, you use the ContentManager class and LINQ queries.

The following example deletes a content block with a given ID:

C#
using System;
using System.Linq;
using Telerik.Sitefinity.GenericContent.Model;
using Telerik.Sitefinity.Modules.GenericContent;

namespace SitefinityWebApp
{
   public class DeleteContentBlockNativeAPI
   {
       public void DeleteContentItemNative(Guid masterContentItemId)
       {
           ContentManager manager = ContentManager.GetManager();

           // Get the master version of the item.
           ContentItem contentItem = manager.GetContent().Where(cI => cI.Id == masterContentItemId).FirstOrDefault();

           if (contentItem != null)
           {
               // Mark the item to be deleted.
               manager.Delete(contentItem);

               // Save the changes.
               manager.SaveChanges();
           }
       }
   }
}

First, you initialize the ContentManager. Then, you get the master version of the content block using GetContent and filtering based on the Id. To delete the content block, you call the Delete method passing the master version as argument. Finally, you save the changes.

NOTE: The code example above works with the ID of the master version of the content block. Deleting the master version also deletes the other versions of the item. For more information about deleting items using the ID of the live version, see For developers: Delete content.

Want to learn more?
Enhance your Sitefinity skills by enrolling in free training sessions. Become Sitefinity certified through Progress Education Community to strengthen your professional credentials.
New to Sitefinity?