我一直在尝试创建一个方程式数据库,我的windows表单应用程序将提供变量,然后计算解决方案。我试图将我的方程式存储在一个文本文件中并将它们加载到一个列表中,但我还没有想到如何将我的方程从一个字符串转换为一个实际的方程式。
那么,有没有人知道如何存储和调用一组使用我的Windows窗体应用程序中的变量的方程式。
P.S。请保持简单或完全解释事情。我很容易混淆。
答案 0 :(得分:2)
您最好的选择是使用数学库来评估您的数学表达式。
以下是一些可以帮助您入门的链接: https://stackoverflow.com/questions/1387430/recommended-math-library-for-c-net
您还可以查看http://ncalc.codeplex.com/,这可能是您想要的。
答案 1 :(得分:0)
您可以使用动态SQL执行此操作。这是SQL Server中的方法。
你可以将方程式与它所需的变量一起存储在一个表中(或者如果你有一组固定的变量,那就没关系。)
将等式提取到C#字符串中。
然后构建以下语句:
select <equation>
from (select <val1> as variable1, <val2> as variable2) t
将等式放在等式中的位置和值所在的变量的值。
在数据库中执行此语句。瞧!结果将是等式的结果。
这种方法有一些缺点。它需要两次往返数据库(一个用于获得等式,另一个用于运行等式)。您还受限于数据库的功能。此外,如果您不使用SQL Server,则语法可能不同(例如,在Oracle中,内部子查询将具有“from dual”)。