示例#1
0
        public IActionResult unsetSubscription(SetSubscription payload)
        {
            var user = _service.GetById(payload.id);

            user.SubscriptionId = null;
            _service.Update(user);
            return(Ok());
        }
 private void Subscribe()
 {
     if (_notifier != null)
     {
         _trace.TraceWarning("Callback channel is broken. Try to re-establish ... ");
         _notifier.Closed  -= _delClosed;
         _notifier.Faulted -= _delClosed;
     }
     _notifier          = new InstanceContext(this);
     _notifier.Closed  += _delClosed;
     _notifier.Faulted += _delClosed;
     try
     {
         svc = new MembershipPlusDuplexServiceProxy(_notifier);
         var sub = new SetSubscription
         {
             EntityType   = EntitySetType.SignalRMessage,
             EntityFilter = null
         };
         var qexpr = new QueryExpresion
         {
             FilterTks = new List <QToken>()
         };
         qexpr.FilterTks.Add(new QToken
         {
             TkName = "ApplicationID == \"" + config.App.ID + "\""
         });
         sub.EntityFilter = qexpr;
         var cntx = Cntx;
         svc.SubscribeToUpdates(cntx, cntx.CallerID, cntx.CallerID, new SetSubscription[] { sub });
         _trace.TraceWarning("Subscription done.");
         CallbackFailed = false;
     }
     catch
     {
         _trace.TraceWarning("Subscription failed.");
         CallbackFailed = true;
         // the data service is down ... wait and try again ...
     }
 }