Ejemplo n.º 1
0
        public async Task TryDelete(int id, Action <string> onSuccess, Action <Exception, string> onFail, CascadingAppStateProvider state)
        {
            try
            {
                if (await _onlineState.IsOnline())
                {
                    EffectRequestDelete  req = new() { Id = id };
                    EffectResponseDelete ret = await _effectService.DeleteAsync(req);

                    if (!ret.Success)
                    {
                        throw new Exception(RequestCodes.FIVE_ZERO_ZERO);
                    }
                }

                if (state.AppState.UseIndexedDB)
                {
                    await _indexedDBManager.OpenDb();

                    await _indexedDBManager.ClearStore("Blobs");
                }

                onSuccess(RequestCodes.TWO_ZERO_ZERO);
            }
            catch (Exception e)
            {
                onFail(e, RequestCodes.FIVE_ZERO_ZERO);
            }
        }
Ejemplo n.º 2
0
        public override async Task <EffectResponseDelete> Delete(EffectRequestDelete request, ServerCallContext context)
        {
            var response = new EffectResponseDelete();

            try
            {
                var list = await _manager.Get(x => x.Id == request.Id);

                if (list != null)
                {
                    var first   = list.First();
                    var success = await _manager.Delete(first);

                    if (success)
                    {
                        Cache.Remove(_cache, "Effect.");
                        response.Success = true;
                        response.Status  = RequestCodes.TWO_ZERO_ZERO + ", deleted 1 row";
                        response.Error   = "";
                    }
                    else
                    {
                        response.Success = false;
                        response.Status  = RequestCodes.FIVE_ZERO_TWO;
                        response.Error   = "Delete did not work";
                    }
                }
                else
                {
                    response.Success = false;
                    response.Status  = RequestCodes.FIVE_ZERO_ZERO;
                    response.Error   = "Could not find Effect for deletion";
                }
            }
            catch (Exception e)
            {
                response.Success = false;
                response.Status  = RequestCodes.FIVE_ZERO_ZERO;
                response.Error   = e.ToString();
            }

            return(await Task.FromResult <EffectResponseDelete>(response));
        }