使用.net 3.5的DataContractJsonSerializer进行JSON Serialization

32 篇文章 0 订阅

 可能你看到这个东东的时候还不理解它是什么,但是如果在.net之前的版本你用过JavaScriptSerializer方法的话,应该就明白了,它在.net 3.5中取代了JavaScriptSerialize进行JSON的serialization和deserialization功能。

这里举个例子来看,创建一个对象是Person它有FirstName和LastName属性。

 

现在,为了能够让我们的对象通过使用DataContractJsonSerializer转化为JSON,我们需要让为它加上Serializable或者是DataContract属性。

 

下面的代码是实现Person的serialize。

 

如果我们使用的Person对象添加了Serializable属性,那么序列化后的结果如下:

/// Result of Person class marked as Serializable
{"<FirstName>k__BackingField":"Chris","<LastName>k__BackingField":"Pietschmann"}

如果是DataContract属性最后结果为:

/// Result of Person class marked as DataContract with
/// each Property marked as DataMember

{"FirstName":"Chris","LastName":"Pietschmann"}

 

今天做个东西需要用到json序列化,正好用到这个东西。 不过熟悉generics的话,使用了generics的帮忙让序列化和反序列化都那么容易了。

 

贴出他的代码,希望大家能够看懂:

 

我觉得他挺牛。。。。崇拜中。。。

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值