public static IGetOperationResult <T> ExecuteGetJson <T>(this ICouchbaseClient client, string key) where T : class
        {
            var result = client.ExecuteGet <string>(key);
            var retVal = new GetOperationResult <T>();

            result.Combine(retVal);
            retVal.Cas = result.Cas;

            if (!result.Success)
            {
                return(retVal);
            }
            retVal.Value = DeserializeObject <T>(key, result.Value);
            return(retVal);
        }
        public static IGetOperationResult <T> ExecuteGetJson <T>(this ICouchbaseClient client, string key) where T : class
        {
            var result = client.ExecuteGet <string>(key);
            var retVal = new GetOperationResult <T>();

            result.Combine(retVal);
            retVal.Cas = result.Cas;

            if (!result.Success)
            {
                return(retVal);
            }

            var json = DocHelper.InsertId(result.Value, key);
            var obj  = JsonConvert.DeserializeObject <T>(json);

            retVal.Value = obj;
            return(retVal);
        }
Exemple #3
0
        public static Tuple <bool, int, string, Dictionary <string, object> > GetDictionary(this ICouchbaseClient client, string key)
        {
            var result = client.ExecuteGet <string>(key);

            if (!result.Success)
            {
                if (result.Exception != null)
                {
                    throw result.Exception;
                }

                return(Tuple.Create <bool, int, string, Dictionary <string, object> >
                           (false, result.StatusCode.HasValue ? result.StatusCode.Value : -1, result.Message, null));
            }

            var dict = JsonConvert.DeserializeObject <Dictionary <string, object> >(result.Value);

            return(Tuple.Create(true, 0, string.Empty, dict));
        }