给定一个字符串以转换为具有变量 c# .net core 的数学方程式

Given a string to convert for a math equation with variable c# .net core

如何将字符串转换为带有变量避免函数 eval() 的方程?

我正在研究 .net 核心,我有这个

decimal total;
string var;

total = total + var;

但字符串 var 是一个方程式,变量现在可以是“1”或“total*2/100”,但将来可以是其他东西

不能将等式的结果赋值给总计,因为等式的结果可能是小数,而总计的类型是整型。

using System.Data;

double result = Double.Parse(new DataTable().Compute($"{total}+{var.Replace("total", total+"")}", "")+"");

与空字符串的连接是将Compute()方法返回的对象转换为字符串并将int类型(总计)转换为字符串,因为Double.Parse()方法和Replace()方法需要一个字符串在他们的参数中。