コード例 #1
0
        public dynamic UpdateSubscription(dynamic subscriber)
        {
            var originalSubscriber = GetSubscriberModelByKey(subscriber.Key);
            var model = Extensions.AsSubscriberModel(subscriber, originalSubscriber);

            model.Version = VersionNumber;
            var             result            = _webClientService.UpdateSubscription(model);
            SubscriberModel updatedSubscriber = JsonConvert.DeserializeObject <SubscriberModel>(result);

            if (updatedSubscriber != null)
            {
                StorageMethod.AddOrUpdateSubscriber(updatedSubscriber);

                _cache.Remove(_cacheKey + updatedSubscriber.Key);
                _cache.Remove(_cacheAppId + updatedSubscriber.ApplicationId);

                _cache.Add(_cacheAppId + updatedSubscriber.ApplicationId, updatedSubscriber, MyCachePriority.Default);
                _cache.Add(_cacheKey + updatedSubscriber.Key, updatedSubscriber, MyCachePriority.Default);
                return(updatedSubscriber.ToDynamic());
            }
            return(null);
        }