Query dynamic module content based on the choice field optio

Posted by Community Admin on 04-Aug-2018 14:43

Query dynamic module content based on the choice field option

All Replies

Posted by Community Admin on 05-Aug-2015 00:00

I am having a Dynamic Module - Programs By Region . There is a dropdown list of States in this module using the dynamic field type Choices. So for each item we can select a state from the dropdown. 

 Now i want to get data based on the value of the state. 

Following is the code i used. : 

public List<DynamicContent> GetRegionalPrograms(string region)
       
            DynamicModuleManager dynamicModuleManager = DynamicModuleManager.GetManager(ProviderName);
            dynamicModuleManager.Provider.SuppressSecurityChecks = true;
            var regionalPrograms = dynamicModuleManager.GetDataItems(regionalprogramType).Where("State = \"" + region + "\"").ToList();
            return regionalPrograms;
       

 

But this is not working for me. It is throwing some errors.

 

Error5'System.Linq.IQueryable<Telerik.Sitefinity.DynamicModules.Model.DynamicContent>' does not contain a definition for 'Where' and the best extension method overload 'System.Linq.Queryable.Where<TSource>(System.Linq.IQueryable<TSource>, System.Linq.Expressions.Expression<System.Func<TSource,bool>>)' has some invalid arguments

 

Error6Argument 2: cannot convert from 'string' to 'System.Linq.Expressions.Expression<System.Func<Telerik.Sitefinity.DynamicModules.Model.DynamicContent,bool>>

 

I am not sure why this is happening. 

Please help. 

Thanks in advance !! 

Anju Raman

 

Posted by Community Admin on 12-Sep-2015 00:00

Hello Anju,

Can you please try to use the following sample code in order to filter the items by choice field value:

dynamicModuleManager.GetDataItems(yourModuleType).Where("ChoiceFieldName.Contains(\"ChoiceFieldValue\") && Status=\"Live\"").ToList();

Please note that you need to replace the values highlighted in yellow above with the name of your choice field and the value of the field name you would like to filter by.
 
You may also refer to the below article for more details about filtering dynamic module items by dynamic field:

Filter dynamic content items by dynamic field
Example: Filter dynamic content items by dynamic field

Please also note to add the following using statements:

using Telerik.Sitefinity.DynamicModules;
using Telerik.Sitefinity.Utilities.TypeConverters;
using Telerik.Sitefinity.Data.Linq.Dynamic;

Regards,
Sabrie Nedzhip
Telerik
 
Do you want to have your say in the Sitefinity development roadmap? Do you want to know when a feature you requested is added or when a bug fixed? Explore the Telerik Sitefinity CMS Ideas&Feedback Portal and vote to affect the priority of the items
 

This thread is closed