关于List对象集合转化成Json字符串,动态赋值问题 本帖最后由 icedong 于 2013-12-23 10:20:05 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Object 类型要可以序列化,用MS提供的方法序列化好好了,读也一样用MS的方法,试试吧 System.Web.Script.Serialization;自己造轮子真的那么好玩么? public class Serialization { /// <summary> /// Json序列化 /// </summary> /// <returns></returns> public static string Serialize<T>(T obj) { try { MemoryStream ms = new MemoryStream(); DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T)); serializer.WriteObject(ms, obj); byte[] json = ms.ToArray(); ms.Close(); return Encoding.UTF8.GetString(json, 0, json.Length); } catch(Exception ex) { Utils.DebugToFile.WriteErr(ex.ToString()); return ""; } } /// <summary> /// Json反序列化 /// </summary> /// <param name="jsonString"></param> public static T Deserialize<T>(string jsonString) { T t = default(T); try { if (!string.IsNullOrEmpty(jsonString)) { DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T)); MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(jsonString)); Object obj = serializer.ReadObject(stream); t = (T)obj; } return t; } catch(Exception ex) { Utils.DebugToFile.WriteErr(ex.ToString()); return t; } } } 额不说啥了,请自己google"System.Web.Script.Serialization""json.net""newtonsoft.json" 这个不是自己造轮子的问题,这个是由于以前有许多的model没有序列化的头,只有通过这个来处理 公司里面对于引用外部的DLL有限制的,如果能用我早用"json.net"、"newtonsoft.json"了System.web.Script.Serialization 这个我在3.5框架中没找到(程序使用的是winform) asp.net网站与c#应用程序之间如何通讯? 用splitter分割条,能否实现只分割窗体的2/3呢,上部的1/3是固定的? 帮解这样一个问题,新手。。 求高人!用斑马888-TT做一个C#打印程序。 一个初学者的问题,谢谢大侠们帮帮我啊! 请问在c#中怎样调用脚本语言? 请教一个问题,C#里怎么给一个字符串进行加密?要可以解密的,不是MD5那种不可逆的 ——————菜鸟求助。 ~~~~~~~~~~~~~ 初学提问 选中table某一行,默认选中该行的radio问题 App.config的应用 c#
{
/// <summary>
/// Json序列化
/// </summary>
/// <returns></returns>
public static string Serialize<T>(T obj)
{
try
{
MemoryStream ms = new MemoryStream();
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T));
serializer.WriteObject(ms, obj);
byte[] json = ms.ToArray();
ms.Close();
return Encoding.UTF8.GetString(json, 0, json.Length);
}
catch(Exception ex)
{
Utils.DebugToFile.WriteErr(ex.ToString());
return "";
}
}
/// <summary>
/// Json反序列化
/// </summary>
/// <param name="jsonString"></param>
public static T Deserialize<T>(string jsonString)
{
T t = default(T);
try
{
if (!string.IsNullOrEmpty(jsonString))
{
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T));
MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(jsonString));
Object obj = serializer.ReadObject(stream);
t = (T)obj;
}
return t;
}
catch(Exception ex)
{
Utils.DebugToFile.WriteErr(ex.ToString());
return t;
}
}
}
"json.net"
"newtonsoft.json"
这个不是自己造轮子的问题,这个是由于以前有许多的model没有序列化的头,只有通过这个来处理
公司里面对于引用外部的DLL有限制的,如果能用我早用"json.net"、"newtonsoft.json"了System.web.Script.Serialization 这个我在3.5框架中没找到(程序使用的是winform)