问题描述
大家好,
如果workflowProperties.Item [strACQCost] .ToString()是十进制数并且FACommon.TotalACQCost是300000,则以下条件抛出输入无效格式错误
Hi All,
Following condition throw input invalid format error if workflowProperties.Item[strACQCost].ToString()is decimal number and FACommon.TotalACQCost is 300000
if (Convert.ToInt32(workflowProperties.Item[strACQCost].ToString()) >= Convert.ToInt32(FACommon.TotalACQCost))
如何更改我的代码以接受workflowProperties.Item [strACQCost] .ToString()的十进制和整数,以便我可以与整数进行比较?
How should i change my code to accept decimal and round number for workflowProperties.Item[strACQCost].ToString() so i can compare with integer?
推荐答案
if (Math.Round(Convert.ToDecimal(workflowProperties.Item[strACQCost].ToString())) >= Math.Round(Convert.ToDecimal(FACommon.TotalACQCost)))
或使用转换.ToDouble()
而不是 Convert.ToDecimal()
如果 FACommon.TotalACQCost
保证到总是是整数的表示,然后它可以保持 Convert.ToInt32()
:
or use Convert.ToDouble()
instead of Convert.ToDecimal()
If the FACommon.TotalACQCost
is guaranteed to always be the representation of an integer, then it can remain Convert.ToInt32()
:
if (Math.Round(Convert.ToDecimal(workflowProperties.Item[strACQCost].ToString())) >= Convert.ToInt32(FACommon.TotalACQCost))
[/ Edit]
[/Edit]
这篇关于整数和十进制转换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!