嘿,我正在尝试WCF soap web服务的测试方法。WCF和不一致的双输入/输出
public Double TestDouble(Double x) { return x; }
测试工具只让我把15个显著位数:
我可以使用SOAP UI添加更多的数字,这里是一个有17个显著数字:
<soapenv:Header/>
<soapenv:Body>
<td:TestDouble>
<!--Optional:-->
<td:x>13.075815372878123</td:x>
</td:TestDouble>
</soapenv:Body>
一般来说,客户倾向于抛出他们想要的许多无花果,所以这只是一个简单的测试,以查看服务返回的一些不一致的数字。
结果也是17个的数字,但稍高,所以输入不匹配输出(当它应该?):
<s:Body>
<TestDoubleResponse xmlns="http://ocdusrow3rndd1">
<TestDoubleResult>13.075815372878124</TestDoubleResult>
</TestDoubleResponse>
</s:Body>
输入到Web服务,在调试模式下运行,似乎已收到正确的原始值:
那么它是如何被改变还给过吗?
您的问题通过询问_“什么是C#/ .NET中的double”的精度_,这在[小数点后的双精度](http:// stackoverflow。COM /问题/ 12089817 /精密的双-后小数点)。 – CodeCaster