日期:2014-05-17  浏览次数:21377 次

C# list 转json 格式问题
  C# list 转json 使用了一下方法
public static string Obj2Json<T>(T data)
        {
            try
            {
                System.Runtime.Serialization.Json.DataContractJsonSerializer serializer = new System.Runtime.Serialization.Json.DataContractJsonSerializer(data.GetType());
                using (MemoryStream ms = new MemoryStream())
                {
                    serializer.WriteObject(ms, data);
                    return Encoding.UTF8.GetString(ms.ToArray());
                }
            }
            catch
            {
                return null;
            }
        }
结果转换出来的json {"Address":null,"City":null,"CompanyAbbreviate":null,"CompanyName":"Kingnob","ConCountry":"","ConProduct":"","Contact":"Fifi","Country":"中国","CreateTime":"\/Date(1346058617643+0800)\/","Credits":80,"Email":null,"Fax":null,"Guid":"5310880e-c87b-4f53-b634-00018a1d059d",

怎样将null 变成“”,还有数字的变成字符“12”、时间变成“年月日”这样 。。有没有用过上面的方法进行过转化的???帮帮忙了。

------解决方案--------------------
帮助文档里面一般有关于Datetime这种特殊类型的转换方法,不过我一般把时间保存为string,在使用的时候datetime.parse()进行转换
--------------------------------
如果你使用的是Newtonsoft.Json.dll,关于时间的转换如下:using Newtonsoft.Json和Newtonsoft.Json.Converters
        class obj