| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- /*******************************************************************************
- * Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
- * 类的信息:
- * 1.程序名称:JsonHelper.cs
- * 2.功能描述:Json转换处理。
- * 编辑履历:
- * 作者 日期 版本 修改内容
- * 陈晓野 2014/09/16 1.00 新建
- *******************************************************************************/
- using System;
- using Newtonsoft.Json;
- using Newtonsoft.Json.Converters;
- namespace Dongke.IBOSS.PRD.Basics.Library
- {
- public static class JsonHelper
- {
- private static JsonSerializerSettings _jsonSettings;
- static JsonHelper()
- {
- IsoDateTimeConverter datetimeConverter = new IsoDateTimeConverter();
- datetimeConverter.DateTimeFormat = "yyyy-MM-dd HH:mm:ss";
- _jsonSettings = new JsonSerializerSettings();
- _jsonSettings.MissingMemberHandling = Newtonsoft.Json.MissingMemberHandling.Ignore;
- //_jsonSettings.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore;
- _jsonSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore;
- _jsonSettings.Converters.Add(datetimeConverter);
- }
- /// <summary>
- /// 将指定的对象序列化成 JSON 数据。
- /// </summary>
- /// <param name="obj">要序列化的对象。</param>
- /// <returns></returns>
- public static string ToJson(object obj)
- {
- try
- {
- if (null == obj)
- return null;
- return JsonConvert.SerializeObject(obj, Formatting.None, _jsonSettings);
- }
- catch (Exception ex)
- {
- throw ex;
- }
- }
- /// <summary>
- /// 将指定的 JSON 数据反序列化成指定对象。
- /// </summary>
- /// <typeparam name="T">对象类型。</typeparam>
- /// <param name="json">JSON 数据。</param>
- /// <returns></returns>
- public static T FromJson<T>(string json)
- {
- try
- {
- return JsonConvert.DeserializeObject<T>(json, _jsonSettings);
- }
- catch (Exception ex)
- {
- throw ex;
- }
- }
- }
- }
|