C# 使用指数表示法将Double转换为字符串

C# 使用指数表示法将Double转换为字符串,c#,C#,步骤:1 我在Sql Server DB中保存了一个值“-3.507828666035941e-04” 步骤:2 从DB中检索此值后,我将其转换为double,得到“-0.00035078286660359412”。我正在转换此值,因为我必须在服务方法中作为参数传递。参数类型为双精度 步骤:3 将其转换为字符串后,我得到“-0.000350782866603594”。在服务方法中,他们将其转换为字符串以附加到字符串生成器中 我的问题是: 我应该再次进行什么转换才能获得“-3.5078286660

步骤:1

我在Sql Server DB中保存了一个值“-3.507828666035941e-04”

步骤:2

从DB中检索此值后,我将其转换为double,得到“-0.00035078286660359412”。我正在转换此值,因为我必须在服务方法中作为参数传递。参数类型为双精度

步骤:3

将其转换为字符串后,我得到“-0.000350782866603594”。在服务方法中,他们将其转换为字符串以附加到字符串生成器中

我的问题是:

我应该再次进行什么转换才能获得“-3.507828666035941e-04”值

我尝试在相反的步骤3,2,1中转换“-0.000350782866603594”
我没有得到所需的值

您可以通过这种方式进行转换

double d = -0.00035078286660359412;
string s = d.ToString("0.000000000000000e00");

你可以这样转换它

double d = -0.00035078286660359412;
string s = d.ToString("0.000000000000000e00");

如果您想要数据库值,为什么首先要将其转换为双精度?请尝试
value.ToString(“E”,CultureInfo.InvariantCulture)
我在Sql Server DB中保存了一个值“-3.507828666035941e-04”。
-您肯定没有?如果我想将“-3.507828666035941e-04”保存到双变量中,我认为您在db表中的字段是float类型,您只能看到它以E表示法显示。我必须转换这个权利我有一个参数类型为double的服务。对于该参数,我必须传递“-3.507828666035941e-04”,如果您想要数据库值,那么首先为什么要将其转换为双精度?请尝试
value.ToString(“E”,CultureInfo.InvariantCulture)
我在Sql Server DB中保存了一个值“-3.507828666035941e-04”。
-您肯定没有?如果我想将“-3.507828666035941e-04”保存到双变量中,我认为您在db表中的字段是float类型,您只能看到它以E表示法显示。我必须转换这个权利我有一个参数类型为double的服务。对于该参数,我必须传递“-3.507828666035941e-04”,我得到的输出是-3.5078E-004。是否可以像这样获得完整值-3.507828666035941e-04super。我试图得到整个“-3.507828666035941e-04”值。所以我尝试了你建议的字符串(“0.000000000000000e00”)的答案,添加了。但是我得到了-3.507828666035940e-04,我想要-3.507828666035941e-04,很酷,我在回答中也加入了你的方法,快乐编码:):)如何在最后得到41e而不是40e。我的问题清楚了吗?我得到的输出是-3.5078E-004。是否有可能得到这样的完整值-3.507828666035941e-04super。我试图得到整个“-3.507828666035941e-04”值。所以我尝试了你建议的字符串(“0.000000000000000e00”)的答案,添加了。但是我得到了-3.507828666035940e-04,我想要-3.507828666035941e-04,很酷,我在回答中也加入了你的方法,快乐编码:):)如何在最后得到41e而不是40e。我的问题清楚吗