C# 如何使用ToString()函数在windows和web项目中获得相同的值?

C# 如何使用ToString()函数在windows和web项目中获得相同的值?,c#,wcf,C#,Wcf,我有两个项目。其中一个带有C#windows,另一个带有C#WCF服务。但它们都使用一个与C#类库项目相关的dll。在此DLL中,我有以下行: string tmpStr = 104.2677519379845.ToString(); 在windows中,它返回: 104.267751937985 但在网络中,它返回: 104.267751937984 这取决于项目的生成选项。对于带有“首选32位”的“x86”或“任意CPU”,您将得到“104.267751937984”。否则您将获得“104

我有两个项目。其中一个带有C#windows,另一个带有C#WCF服务。但它们都使用一个与C#类库项目相关的dll。在此DLL中,我有以下行:

string tmpStr = 104.2677519379845.ToString();
在windows中,它返回:

104.267751937985

但在网络中,它返回:

104.267751937984


这取决于项目的生成选项。对于带有“首选32位”的“x86”或“任意CPU”,您将得到“104.267751937984”。否则您将获得“104.267751937985”


如果您将使用十进制(
104.2677519379845M.ToString()
),那么您将获得正确的值(在本例中)。

您可以发布返回字符串的方法以及使用该字符串的方法/代码并在UI上显示它吗?您是否在具有不同处理器的不同计算机上运行此操作?请注意,您的值是一个浮点值。谢谢您的回答。我选择了十进制而不是双精度,并用不同的值测试了3天,结果正确。