我有系统A向系统B上托管的Soap Web服务发出请求。目前,系统B返回一个十进制数据类型,其格式为显示3个小数位。我使用wsdl.exe工具生成类,它只显示为直线小数。
我需要使用自己的Soap服务复制系统B,但我无法获得小数字段以显示3位小数。我无法控制系统A的期望,并且我被告知即使值为圆形也必须显示小数(例如500.000)。
在阅读了很多关于格式化为字符串然后进行十进制解析的帖子之后,我所做的一切都无法强制执行此行为。我已经看过Soap和XML属性,但似乎无法控制这一点。
我怎样才能做到这一点?
答案 0 :(得分:0)
令人尴尬的是它有效!
if (_fd.CreditLimit.HasValue) {
decimal _dd = Convert.ToDecimal(_fd.CreditLimit.Value.ToString("#.000"));
//decimal _dd = 500.000m;
_rv.CreditLimit = _dd;
}
我在Visual Studio中破坏了我的代码,当我检查变量_dd时它显示500.但是如果我让Soap做它的事情并返回结果它显示500.000作为值。