嘿,我正在嘗試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