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