利用Newtonsoft.Json实现Json序列化与反序列化
2015-07-30 14:03
676 查看
在项目中用到了Newtonsoft.Json来实现序列化和反序列化,在这里写下实现代码。
View Code
1、创建类用于排除不序列化的属性
public class ExcludePropertiesContractResolver : DefaultContractResolver { IEnumerable<string> lstExclude; public ExcludePropertiesContractResolver(IEnumerable<string> excludedProperties) { lstExclude = excludedProperties; } protected override IList<JsonProperty> CreateProperties(Type type, MemberSerialization memberSerialization) { return base.CreateProperties(type, memberSerialization).ToList().FindAll(p => !lstExclude.Contains(p.PropertyName)); } }
2、序列化方法
以下分别是将对象、DataTable、集合序列化为Json字符串的方法:/// <summary> /// json字符串转换成T对象 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="jsonStr"></param> /// <returns></returns> public static T GetObjectByJsonString<T>(string jsonStr) { T obj = JsonConvert.DeserializeObject<T>(jsonStr); return obj; } /// <summary> /// json字符串转换成List对象 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="jsonStr"></param> /// <returns></returns> public static List<T> GetListByJsonString<T>(string jsonStr) { List<T> list = JsonConvert.DeserializeObject<List<T>>(jsonStr); return list; }
View Code
相关文章推荐
- JavaScript读写json数据
- js刷新页面方法
- lua和V8 JavaScript初学中,,,,(二)
- JavaScript中的变量
- 28. JavaScript 库
- JS系列——Linq to js使用小结
- 27. JavaScript Cookies
- js 函数对象
- 【读书笔记】通过原生javascript获取margin
- JS 判断滚动底部并加载更多效果。。。。。。。。。
- 26. JavaScript 计时
- js 变量、函数提升
- 表单设计器系列之消失的javascript
- 团购、定时抢购倒计时js版
- JS转义 escape()、encodeURI()、encodeURIComponent()区别详解
- js校验表单 后提交表单的三种方法总结
- JS中location.href页面跳转粗解
- jsp页面跳转的相关问题
- JSP简单的练习-功能标签
- JSP_include指令和<jsp:include>