该帮助类其实是基于Newtonsoft.Json的封装,这样项目中用到json字符串的序列化和反序列化时就不需要每一处都引用Newtonsoft.Json了而只是引用该帮助类所在的Common组件即可,这样不用在每个项目中添加Newtonsoft.Json的Nuget包只需要在Common组件中引用Newtonsoft.Json的Nuget包,方便了Nuget包的管理。
using System;
namespace UClass.DocDecrypt.Common
{
public sealed class JsonHelper
{
/// <summary>
/// 反序列化json字符串
/// </summary>
/// <typeparam name="T">类型</typeparam>
/// <param name="jsonstring">json字符串</param>
/// <returns>反序列化得到的T类型的实例对象</returns>
public static T DeserializeObject<T>(string jsonstring)
{
try
{
return Newtonsoft.Json.JsonConvert.DeserializeObject<T>(jsonstring);
}
catch (Exception ex)
{
Console.WriteLine(ex);
throw;
}
}
/// <summary>
/// 序列化
/// </summary>
/// <typeparam name="T">类型</typeparam>
/// <param name="obj">对象</param>
/// <returns>json字符串</returns>
public string SerializeObject<T>(T obj)
{
try
{
return Newtonsoft.Json.JsonConvert.SerializeObject(obj);
}
catch (Exception ex)
{
Console.WriteLine(ex);
throw;
}
}
}
}