Search for a content blocks by content match

You can search for a content block with the Native API or with the Fluent API.

Search with the Native API

To search for all content blocks that have a given string in their content, you use the ContentManager class.

You first initialize ContentManager. Then, you get all content blocks using GetContent() and filter based on the Contentand Statusproperties: `using System.Linq; using Telerik.Sitefinity.GenericContent.Model; using Telerik.Sitefinity.Modules.GenericContent;

namespace SitefinityWebApp { public class QueryContentBlockByMatchNativeAPI { public IQueryable GetContentItemsByContentMatchNative(string contentToSearch) { ContentManager manager = ContentManager.GetManager(); IQueryable contentItems = manager.GetContent() .Where(cI => (cI.Content.Contains(contentToSearch) && cI.Status == ContentLifecycleStatus.Live)); return contentItems; } } }`

Search with the Fluent API

To search for all content blocks that have a given string in their content, you use the plural content block facade.

You first initialize the plural content block facade using App.WorkWith().ContentItems(). Then, you filter based on the Contentand Statusproperties. Finally, to get the content blocks, you use the Get method:

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

namespace SitefinityWebApp
{
   public class QueryContentBlockByMatchFluentAPI
   {
       public IQueryable<ContentItem> GetContentItemsByContentMatchFluent(string contentToSearch)
       {
           IQueryable<ContentItem> contentItems = App.WorkWith().ContentItems()
                                           .Where(cI => (cI.Content.Contains(contentToSearch) && cI.Status == ContentLifecycleStatus.Live)).Get();
           return contentItems;
       }
   }
}
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.