1

Due to performance reasons GitHub page suggests "If you need to run the same expression multiple times with different parameters I suggest to parse it one time and then invoke the parsed expression multiple times."

I have a class like this:

public class Conditional : TemplateElement
{
 public string Condition { get => _condition; set => _condition = value; }
 public Lambda Parsed { get => ...; private set => ... }

 public Conditional(string condition)
 {
  Condition = condition;
  ...
  ParseExpression();
 }

 private void ParseExpression()
 {
  var target = new Interpreter();
  Lambda = target.Parse(Condition, ???);
 }
}

The 'Condition' string can be in form:

item["CreatedDate"] <= DateTime.Today.AddDays(-2)

Now, at the moment of instantiation of Conditional class I don't know what the 'item' contains, I want it to be parsed so I can use it later. Lambda should resolve to the Condition to boolean.

I'm not exactly sure how to achieve this, documentation doesn't help me much. Should I define 'item' as specific type in Parameters array?

n0e
  • 309
  • 3
  • 12
  • I suggest to post this question on [github issues](https://github.com/davideicardi/DynamicExpresso). For your specific case try to look here: https://github.com/davideicardi/DynamicExpresso#parameters – Davide Icardi Nov 16 '18 at 14:48

0 Answers0