/// <summary> /// 哈希类型,可以当做字典类型,也可以直接用来存储对象 /// HashGet<T>带field用于取得一个哈希类型内第二级别的key,也就是修改字段field的内容 /// </summary> /// <returns>返回值</returns> public T HashGet <T>(string key, string field, int databaseNumber = -1, object asyncState = null) { try { IDatabase db = redis.GetDatabase(databaseNumber, asyncState); return(jil.Deserialize <T>(db.HashGet(key, field))); } catch { if (typeof(T).IsPrimitive) { throw new ArgumentNullException("相关内容不存在"); // throw } return(default(T)); } }
static TMessage Roundtrip <TMessage>(TMessage message) where TMessage : class { var serializer = new JilSerializer(); var roundtrippedMessage = serializer.Deserialize(serializer.Serialize(new Message(new Dictionary <string, string>(), message)).Result) .Result; return(roundtrippedMessage.Body as TMessage); }
public SByte DeserializeSByteWithJilSerializer() { return(JilSerializer.Deserialize <SByte>(SByteOutputOfJilSerializer)); }