public void FoundAnswer(Context context) { var expressions = from expression in context.Expressions select string.Format(CultureInfo.InvariantCulture, "{0} => {1}", expression.Expression.Describe(), expression.ExpressionResult); string format = context.Parameter == Missing.Value ? "Question = {1}{0}Answer = {3}{0}Used strategy = {4}{0}Used Aggregator = {5}{0}Expressions = {6}" : "Question = {1}{0}Parameter = {2}{0}Answer = {3}{0}Used strategy = {4}{0}Used Aggregator = {5}{0}Expressions = {6}"; string message = string.Format( CultureInfo.InvariantCulture, format, Environment.NewLine, context.Question.Describe(), context.Parameter, context.Answer, context.Strategy.Describe(), context.Aggregator.Describe(), expressions.Aggregate(string.Empty, (aggregate, value) => aggregate + Environment.NewLine + " " + value)); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("== Evaluation Engine =="); Console.WriteLine(); Console.WriteLine(message); Console.WriteLine(); }
public void FoundAnswer(Context context) { var expressions = from expression in context.Expressions select new { Expression = expression.Expression.Describe(), expression.ExpressionResult }; this.FoundAnswerLog = string.Format( "Question = {1}{0}Strategy = {2}{0}Aggregator = {3}{0}Parameter = {4}{0}Answer = {5}{0}Expressions = {6}", Environment.NewLine, context.Question.Describe(), context.Strategy.Describe(), context.Aggregator.Describe(), context.Parameter, context.Answer, expressions.Aggregate(string.Empty, (aggregate, value) => aggregate + Environment.NewLine + " " + value.Expression + " returned " + value.ExpressionResult)); }