SPSite site = SPContext.Current.Site; SPWeb oWebsiteRoot = site.RootWeb; SPQuery query = new SPQuery(); List conditions = new List (); foreach (string word in filterval) { conditions.Add(string.Format(" {0} ", word)); } string merged = MergeCAMLConditions(conditions, MergeType.Or);
.............................................................
private static string MergeCAMLConditions(List conditions, MergeType type)
{ try { if (conditions.Count == 0) return ""; string typeStart = (type == MergeType.And ? " " : " "); string typeEnd = (type == MergeType.And ? " " : "");
// Build hierarchical structure while (conditions.Count >= 2) { List complexConditions = new List (); for (int i = 0; i < conditions.Count; i += 2) { if (conditions.Count == i + 1) // Only one condition left complexConditions.Add(conditions[i]); else // Two condotions - merge complexConditions.Add(typeStart + conditions...
Cloud development @ its best. Snippets, ideas, latest, best practices etc.