12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- using MessagePack;
- using System;
- namespace HaBookCms.Common.JsonHelper
- {
- public class MessagePackHelper
- {
- /// <summary>
- /// Json字符串转Byte
- /// </summary>
- /// <param name="json"></param>
- /// <returns>byte[]</returns>
- public static byte[] JsonToByte(string json) {
- return LZ4MessagePackSerializer.FromJson(json);
- }
- /// <summary>
- /// Json字符串转对象
- /// </summary>
- /// <typeparam name="T"></typeparam>
- /// <param name="json"></param>
- /// <returns>T</returns>
- public static T JsonToObject<T>(string json){
- Type type = typeof(T);
- return (T)LZ4MessagePackSerializer.NonGeneric.Deserialize(type, JsonToByte(json));
- }
- /// <summary>
- /// 对象转Byte
- /// </summary>
- /// <param name="obj"></param>
- /// <returns>byte[]</returns>
- public static byte[] ObjectToByte(Object obj) {
- return LZ4MessagePackSerializer.Serialize(obj);
- }
- /// <summary>
- /// 对象转Json
- /// </summary>
- /// <param name="obj"></param>
- /// <returns>string</returns>
- public static string ObjectToJson(Object obj) {
- return LZ4MessagePackSerializer.ToJson(ObjectToByte(obj));
- }
- /// <summary>
- /// byte转Json
- /// </summary>
- /// <param name="bt"></param>
- /// <returns></returns>
- public static string byteToJson(byte[] bt) {
- return LZ4MessagePackSerializer.ToJson(bt);
- }
- /// <summary>
- /// byte转对象
- /// </summary>
- /// <typeparam name="T"></typeparam>
- /// <param name="bt"></param>
- /// <returns></returns>
- public static T byteToObject<T>(byte[] bt) {
- Type type = typeof(T);
- return (T)LZ4MessagePackSerializer.NonGeneric.Deserialize(type, bt);
- }
- }
- }
|