Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 查询中的双值以c语言中xml的科学表示法显示#_C#_Sql_Xml_Double_Scientific Notation - Fatal编程技术网

C# 查询中的双值以c语言中xml的科学表示法显示#

C# 查询中的双值以c语言中xml的科学表示法显示#,c#,sql,xml,double,scientific-notation,C#,Sql,Xml,Double,Scientific Notation,我正在修改c#中的一段代码,该代码从查询中检索数据并以xml格式显示。实际上,我正在修改查询,因为代码的其余部分不应该更改 此查询返回的列有时是十进制数(精度为2),有时是整数。执行查询本身会给出正确的结果 查询中的数据由下面的代码解析为xml。然而,在xml文档中,我得到的是整个列的科学符号值 守则: database_connection = new SqlConnection(CONNECTION_STRING); command = new System.Data.SqlClient.

我正在修改c#中的一段代码,该代码从查询中检索数据并以xml格式显示。实际上,我正在修改查询,因为代码的其余部分不应该更改

此查询返回的列有时是十进制数(精度为2),有时是整数。执行查询本身会给出正确的结果

查询中的数据由下面的代码解析为xml。然而,在xml文档中,我得到的是整个列的科学符号值

守则:

database_connection = new SqlConnection(CONNECTION_STRING); 
command = new System.Data.SqlClient.SqlCommand(sql_query, database_connection);
command.Connection.Open();
document = new System.Xml.XmlDocument();
document.Load(command.ExecuteXmlReader());

list = document.GetElementsByTagName("time_in_months");

foreach (XmlNode elementToEncrypt in list)
{
     elementToEncrypt.InnerXml = elementToEncrypt.InnerXml;
}
Response.ContentType = "text/xml";
Response.ContentEncoding = System.Text.Encoding.UTF8;
document.Save(Response.Output);
command.Connection.Close();
Response.End();
基本上,对于db值10(10天=0.33个月),查询返回ex.0.33;对于db值90,查询返回3

然而,xml文档在10天内返回3.300000000000000e-001,在90天内返回3.000000000000000e+000

我可以设定一个标准,所有的值都是双倍的,但是科学记数法是个问题。作为一名c#程序员,我真的不确定类型的对话发生在哪里


PS:我知道一个月的天数不同,但这与我们计算的方式无关。我们认为每个月有30天。

我还没有完全弄明白这一点,所以欢迎其他答案,但我确实解决了这个问题

我将查询中的值转换为varchar(具有合理的长度),现在这些值显示正确。 查询执行仍然会给出相同的结果,但xml数据格式正确


只是猜测一下,当数据被解析为xml时,它会检测到两种不同的数据类型,并将它们转换为科学符号以支持这两种数据类型

我还没有完全解决这个问题,所以欢迎其他答案,但我确实解决了这个问题

我将查询中的值转换为varchar(具有合理的长度),现在这些值显示正确。 查询执行仍然会给出相同的结果,但xml数据格式正确

只是猜测一下,当数据被解析为xml时,它会检测到两种不同的数据类型,并将它们转换为科学符号以支持这两种数据类型