读书人

将值代入到一个字符串公式中解决方法

发布时间: 2012-08-09 15:59:21 作者: rapoo

将值代入到一个字符串公式中
主表中:数据库中的字段formula中存储的字符串公式是:(((V1-V2)*C*0.09)/(V*5/100))*100
子表中:Code的值和Parvlaue值分别是
Code Parvlaue
V 10
C 10
V2 10
V1 15
注:公式里面的值是不固定的,有可能下次就是换成V12,X呀之类的

我要的结果是将值代入到字符串里面,然后计算出结果
例:(((15-10)*10*0.09)/(10*5/100))*100 = 900

[解决办法]
1.查询数据库拼出计算字符串,也就是(((15-10)*10*0.09)/(10*5/100))*100
2.添加COM引用
http://blog.csdn.net/yxbsmx/article/details/5268396
3.调用如下

C# code
MSScriptControl.ScriptControl sc = new MSScriptControl.ScriptControl();                sc.Language = "JavaScript";                MessageBox.Show(sc.Eval("(((15-10)*10*0.09)/(10*5/100))*100").ToString());//900
[解决办法]
探讨
引用:

SQL code
DECLARE @S NVARCHAR(4000)
SET @S='(((,V1,-,V2,)*,C,*0.09)/(,V,*5/100))*100'
--> 测试数据: #TB
if object_id('tempdb.dbo.#TB') is not null drop table #TB
create table #TB (Code ……

读书人网 >C#

热点推荐