【问题标题】:ASP/VB/C# .NET Dynamic Calculations & ReferencingASP/VB/C# .NET 动态计算和引用
【发布时间】:2012-06-14 19:48:50
【问题描述】:

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

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

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

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

任何帮助将不胜感激。谢谢!

【问题讨论】:

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


    【解决方案1】:

    Windows 工作流有一个很好的“规则”功能,它是基于 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

    【讨论】:

      【解决方案2】:

      您可以使用eval 函数,如herehere 中描述的函数。

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

      【讨论】:

        猜你喜欢
        • 2011-10-27
        • 1970-01-01
        • 2014-07-14
        • 2021-12-10
        • 2016-08-13
        • 2011-11-03
        • 2023-03-29
        • 2021-08-17
        • 1970-01-01
        相关资源
        最近更新 更多