Łatwy i szybki sposób na ewaluację działań w .NET

Poszukiwałem łatwego sposobu na obliczenie działania zapisanego jako string. Rozwiązanie jakie znalazłem jest dosyć ciekawe i muszę przyznać, że działa wydajnie.

public static decimal Evaluate(string expression)
{
   object result = new DataTable().Compute(expression, null);
   return Convert.ToDecimal(result);
}