コード例 #1
0
        protected Stash GetItemSerializeCompressEncrypt(Stash item)
        {
            byte[] arProtected;
            byte[] arCompressed;
            arProtected = Convert.FromBase64String(item.Value);
            try
            {
                arCompressed = this.Unprotect(arProtected);
            }
            catch (Exception)
            {
                throw;
            }

            item.Value = this.GetBase64String(this.Uncompress(arCompressed));
            item.Value = DecodeFromBase64(item.Value);
            if (item.Serialized)
            {
                Type    serializedType = this.GetStoredType(item.StoredType);
                dynamic deserialized   = JsonConvert.DeserializeObject(item.Value, serializedType);
                item.SetPrivateObject(deserialized); // deserialized data assigned to Object property.
                item.Serialized = true;              // the value property remains serialized...
            }

            return(item);
        }
コード例 #2
0
        protected Stash GetItemSerializationOnly(Stash item)
        {
            if (item.Serialized)
            {
                Type serializedType = this.GetStoredType(item.StoredType);
                item.SetPrivateObject(JsonConvert.DeserializeObject(item.Value, serializedType)); // deserialized data assigned to Object property.
                item.Serialized = true;                                                           // the value property remains serialized...
            }

            return(item);
        }
コード例 #3
0
        protected Stash GetItemSerializeCompress(Stash item)
        {
            byte[] itembytes    = Convert.FromBase64String(item.Value);
            byte[] arCompressed = this.Uncompress(itembytes);
            item.Value = Convert.ToBase64String(arCompressed);
            item.Value = DecodeFromBase64(item.Value);
            if (item.Serialized)
            {
                Type serializedType = this.GetStoredType(item.StoredType);
                item.SetPrivateObject(JsonConvert.DeserializeObject(item.Value, serializedType)); // deserialized data assigned to Object property.
                item.Serialized = true;                                                           // the value property remains serialized...
            }

            return(item);
        }