作者:Shimmoon | 来源:互联网 | 2023-10-13 09:43
C#datatable序列化后整数带有小数点或者小数点变成整数原来datatable的列有个datatype属性,可以指定为int类型或者decimal类型的,如果指定int类型,
C# datatable 序列化后 整数带有小数点或者小数点变成整数
原来 datatable的列有个datatype属性,可以指定为int类型或者decimal类型的,如果指定int类型,序列化后就变成int类型,没有小数点了。如果指定为decimal类型,整数却莫名其妙带上小数点了
后来换了一种方法,直接返回json格式的,这个是不带类型的
var jarray = new JArray();
foreach (DataRow row in dt.Rows)
{
var mark = new JObject { { "NUM", row["NUM"].ToString() }, { "NUMTYPE", row["NUMTYPE"].ToString() } };
jarray.Add(mark);
}
这样再序列化后,返回的值就可以有int类型和decimal类型了
{"status":true,"msg":"获取成功!","data":[{"NUM":"0","NUMTYPE":"ABSENT"},{"NUM":"0","NUMTYPE":"BACK"},{"NUM":"0","NUMTYPE":"COME"},{"NUM":"0","NUMTYPE":"LATE"},{"NUM":"3045","NUMTYPE":"TOTAL"},{"NUM":0.0657,"NUMTYPE":"AttendRate"}],"code":30000}