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

c# 序列化成JSON
C# code


    [XmlRoot("checkcode_send_response")]
    public class IntegralSendCheckCodeResponse
    {
        /// <summary>
        /// 是否发送成功
        /// </summary>
        [XmlElement("success")]
        public bool Success { get; set; }
    }



如何如何根据XmlRoot 和 XmlElement序列化
结果为:{checkcode_send_response:{success:true}}

------解决方案--------------------
搜索 json.net
------解决方案--------------------
Newtonsoft.Json
------解决方案--------------------
Newtonsoft.Json,好像4.5提供json类
------解决方案--------------------
http://www.cnblogs.com/sbxwylt/archive/2008/12/31/1366199.html
------解决方案--------------------
想通过自定特性生成Json,那你肯定要自己写 序列化和反序列化了

C# code

//获取属性的特性
PropertyInfo info = //对象属性
info.GetCustomAttributes();

//获取类型的特性
obj.GetType().GetCustomAttributes();

------解决方案--------------------
给你摘取一段Newtongsoft.dll中的帮助文档内容:

C# code
[JsonObject(MemberSerialization.OptIn)]
public class Person
{
  // "John Smith"
  [JsonProperty]
  public string Name { get; set; }
 
  // "2000-12-15T22:11:03"
  [JsonProperty]
  [JsonConverter(typeof(IsoDateTimeConverter))]
  public DateTime BirthDate { get; set; }
 
  // new Date(976918263055)
  [JsonProperty]
  [JsonConverter(typeof(JavaScriptDateTimeConverter))]
  public DateTime LastModified { get; set; }
 
  // not serialized
  public string Department { get; set; }
}

------解决方案--------------------
探讨

给你摘取一段Newtongsoft.dll中的帮助文档内容:

C# code
[JsonObject(MemberSerialization.OptIn)]
public class Person
{
// "John Smith"
[JsonProperty]
public string Name { get; set; }

// "2000-12-15T22:11……