当使用JSON.NET序列化对象时,将Int转换为字符串 [英] Convert Int to String while serialize object using JSON.NET
本文介绍了当使用JSON.NET序列化对象时,将Int转换为字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图使用JObject(NewtonSoft.dll)将DataTable转换为JSON字符串。在我的情况下,表可能具有不同数据类型的值。我想把这些值转换为字符串,同时序列化对象。
I tried to convert DataTable to JSON string using JObject (NewtonSoft.dll). In my case table may have values with different data types. I want to convert those values to string while serialize the object.
DataTable tab = new DataTable();
tab.Columns.Add("ID", typeof(int));
tab.Columns.Add("Name");
tab.Rows.Add(1, "Role1");
tab.Rows.Add(2, "Role2");
string strValues = JsonConvert.SerializeObject(tab);
--output of strValues
-- [{"ID":1,"Name":"Role1"},{"ID":2,"Name":"Role2"}]
但它应该是这样 -
But it should be like this -
[{ID:1,Name:Role1},{ID:2,Name:Role2}]
[{"ID":"1","Name":"Role1"},{"ID":"2","Name":"Role2"}]
请给我解决方案。感谢
推荐答案
您可以使用第三方.dll,例如Newtonsoft.Json
You can use the third party .dll like Newtonsoft.Json
DataTable tab = new DataTable();
tab.Columns.Add("ID", typeof(int));
tab.Columns.Add("Name");
tab.Rows.Add(1, "Role1");
tab.Rows.Add(2, "Role2");
// Serialize to JSON string
TextWriter output = new TextWriter();
JsonTextWriter writer = new JsonTextWriter(output);
writer.Formatting = JsonFormatting;
JsonSerializer serializer = JsonSerializer.Create(JsonSerializerSettings);
serializer.Serialize(writer, tab);
writer.Flush();
这篇关于当使用JSON.NET序列化对象时,将Int转换为字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文