private IQueryable <TEF> AddSearchParameters(IQueryable <TEF> q, DTO.StdInputs sci) { if (sci.SearchParameters != null && sci.SearchParameters.Count > 0) { int count = sci.SearchParameters.Count; dynamic expAll = null; bool orJoiner = false; for (int i = 0; i < count; i++) { var sp = sci.SearchParameters.ElementAt(i); var exp = OrmHelper.GetBinaryExpression <TEF>(sp.Column, (int)sp.Compare, sp.Value); if (i == 0) { expAll = exp; } else { expAll = orJoiner ? OrmHelper.ExpressionOr(expAll, exp) : OrmHelper.ExpressionAnd(expAll, exp); } orJoiner = sp.Or; } return(OrmHelper.WhereWrapper <TEF>(q, expAll)); } return(q); }