private void ProcessWhereClause(LambdaExpression lambda) { if ((lambda.Parameters.Count != 1) || (!(lambda.Parameters[0] is ParameterExpression)) || (!IsAWorkItem(lambda.Parameters[0].Type))) { throw new InvalidOperationException("invalid where clase"); } WhereClauseTranslator whereTranslator = new WhereClauseTranslator(); string whereClause = whereTranslator.Translate(lambda.Body, _builder); _builder.AddWhereClause(whereClause); }