ASP / VB / C#.NET动态计算&引用

时间:2012-06-11 21:50:30

标签: c# asp.net mysql sql-server vb.net

我正在开发一个应用,其中涉及数百种不同的计算,并希望我的应用管理员能够通过指定公式来调整这些计算。

例如,我的数据库表包含价格和数量。其中一列“X”可能包含“(过去7天内的价格*数量)”。如何允许我的应用管理员将计算从“7天”更改为“14天”?

是否有某种方法可以在VB.NET中进行动态计算,或者如果需要更改,我是否必须依赖存储过程并编写一些代码来改变这些过程?这种情景中的最佳做法是什么?

理想情况下,我想使用与在此处发布问题时使用的“标签”框类似的内容来调出可用字段并在它们之间添加数学运算符以执行计算。它可能会增加更多的复杂性,但如果不覆盖现有的计算以便可以用于构建新的公式,那就太棒了。

非常感谢任何帮助。谢谢!

2 个答案:

答案 0 :(得分:1)

您可以使用eval功能,如herehere所述。

确保以安全的方式实施。由于显而易见的原因,允许用户执行任意代码可能很危险。

答案 1 :(得分:0)

Windows Workflow有一个很好的“规则”功能,它是一个基于XML的规则定义

http://msdn.microsoft.com/en-us/library/aa480193.aspx http://stackoverflow.com/questions/1017056/parse-and-execute-formulas-with-c-sharp

你可以利用它。或者,您可以构建自己的基于XML的公式引擎。与此类似:

http://www.codeproject.com/Articles/25578/Dynamic-Formula-Processing-Library

相关问题