Blame view

netcore/src/Modularity/Common/NCC.Common/Helper/JsonHelper.cs 3.76 KB
de2bd2f9   “wangming”   项目初始化
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
  using Newtonsoft.Json;
  using Newtonsoft.Json.Converters;
  using Newtonsoft.Json.Linq;
  using System;
  using System.Collections.Generic;
  using System.Data;
  using System.IO;
  
  namespace NCC.Common.Helper
  {
      /// <summary>
      /// JsonHelper
      ///  本:V3.0.0
      ///  权:Wesleyhttps://www.NCCsoft.com
      ///  者:NCC开发平台组
      /// </summary>
      public static class JsonHelper
      {
          /// <summary>
          /// 
          /// </summary>
          /// <param name="obj"></param>
          /// <returns></returns>
          public static string ToJson(this object obj)
          {
              var timeConverter = new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" };
              return JsonConvert.SerializeObject(obj, timeConverter);
          }
  
          /// <summary>
          /// 
          /// </summary>
          /// <param name="obj"></param>
          /// <param name="datetimeformats"></param>
          /// <returns></returns>
          public static string ToJson(this object obj, string datetimeformats)
          {
              var timeConverter = new IsoDateTimeConverter { DateTimeFormat = datetimeformats };
              return JsonConvert.SerializeObject(obj, timeConverter);
          }
  
          /// <summary>
          /// 
          /// </summary>
          /// <typeparam name="T"></typeparam>
          /// <param name="json"></param>
          /// <returns></returns>
          public static T ToObject<T>(this string json)
          {
              return json == null ? default(T) : JsonConvert.DeserializeObject<T>(json);
          }
  
          /// <summary>
          /// 
          /// </summary>
          /// <typeparam name="T"></typeparam>
          /// <param name="json"></param>
          /// <returns></returns>
          public static T ToObject<T>(this object json)
          {
              return json == null ? default(T) : JsonConvert.DeserializeObject<T>(json.ToJson());
          }
  
          /// <summary>
          /// 
          /// </summary>
          /// <typeparam name="T"></typeparam>
          /// <param name="json"></param>
          /// <returns></returns>
          public static List<T> ToList<T>(this string json)
          {
              return json == null ? null : JsonConvert.DeserializeObject<List<T>>(json);
          }
  
          /// <summary>
          /// 
          /// </summary>
          /// <param name="json"></param>
          /// <returns></returns>
          public static DataTable ToTable(this string json)
          {
              return json == null ? null : JsonConvert.DeserializeObject<DataTable>(json);
          }
  
          /// <summary>
          /// 
          /// </summary>
          /// <param name="json"></param>
          /// <returns></returns>
          public static JObject ToObject(this string json)
          {
              return json == null ? JObject.Parse("{}") : JObject.Parse(json.Replace("&nbsp;", ""));
          }
  
          /// <summary>
          /// 
          /// </summary>
          /// <param name="json"></param>
          /// <returns></returns>
          public static string PraseToJson(string json)
          {
              JsonSerializer s = new JsonSerializer();
              JsonReader reader = new JsonTextReader(new StringReader(json));
              Object jsonObject = s.Deserialize(reader);
              StringWriter sWriter = new StringWriter();
              JsonWriter writer = new JsonTextWriter(sWriter);
              writer.Formatting = Formatting.Indented;
              s.Serialize(writer, jsonObject);
              return sWriter.ToString();
          }
  
          /// <summary>
          /// 
          /// </summary>
          /// <param name="dic"></param>
          /// <param name="key"></param>
          /// <returns></returns>
          public static string GetValue(this Dictionary<string, string> dic, string key)
          {
              return dic.ContainsKey(key) ? dic[key] : null;
          }
  
        
  
  
      }
  }