C# datatable 序列化后 整数带有小数点或者小数点变成整数

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}

猜你喜欢

转载自www.cnblogs.com/sharestone/p/10316562.html