2015-10-19 89 views
-4

是否有可能从值为0C而不是0M的Web服务返回小数。返回类型必须是十进制的,因此转换为货币字符串选项不起作用。货币格式的十进制返回

小数返回值是0M但在应对它显示为<Money>0.0000</Money> 值必须是货币形式,即0.00

也许有些DataAnotation将帮助?

+1

什么类型的web服务的,什么是接口,... –

+0

一个'decimal'没有格式化 –

+0

可能重复[1](http://stackoverflow.com/questions/10741190/currency-formatting- MVC),[2](http://stackoverflow.com/questions/11175921/string-formatting-with-currency-double-values-not-displaying-correctly),[3](http://stackoverflow.com/问题/ 32957318 /字符串格式返回值 - 纯方法不被使用) –

回答

4

我知道两个解决方案来解决这个问题。

一个

返回字符串:

string money = yourValue.ToString("0.00"); 

两个

使用Round

decimal money = Math.Round(yourValue, 2); 

解析

它总是会将.00添加到整数值。

decimal money = decimal.Parse(yourvalue.ToString("0.00")); 
+1

有趣的是,如何将您的Minion头像留给我的头像,现在我已经编辑了您的问题。我现在感觉不好... –

+1

哈哈:)你想要那个饼干? :D – Fka

+0

第一个不为我工作的返回类型必须是十进制的,第二个是将工作从0.0000转换为0.00,但是如果我有初始值2呢?它仍然会显示2而不是2.00的货币。有关于此的任何想法? – user2542809