Exemple #1
0
        public async Task <OperationResult <VoidResponse> > DeletePostOrComment(DeleteModel model, CancellationToken ct)
        {
            var results = Validate(model);

            if (results.Any())
            {
                return(new OperationResult <VoidResponse>(new ValidationError(results)));
            }

            if (model.IsEnableToDelete)
            {
                var operationResult = await _ditchClient.Delete(model, ct);

                if (operationResult.IsSuccess)
                {
                    if (model.IsPost)
                    {
                        Trace($"post/@{model.Author}/{model.Permlink}/delete", model.Login, operationResult.Error, $"@{model.Author}/{model.Permlink}", ct);//.Wait(5000);
                    }
                    return(operationResult);
                }
            }

            var result = await _ditchClient.CreateOrEdit(model, ct);

            if (model.IsPost)
            {
                Trace($"post/@{model.Author}/{model.Permlink}/edit", model.Login, result.Error, $"@{model.Author}/{model.Permlink}", ct);//.Wait(5000);
            }
            return(result);
        }
Exemple #2
0
        public async Task <OperationResult <VoidResponse> > DeletePostOrComment(DeleteModel model, CancellationToken ct)
        {
            var results = Validate(model);

            if (results.Any())
            {
                return(new OperationResult <VoidResponse>(new ValidationError(string.Join(Environment.NewLine, results.Select(i => i.ErrorMessage)))));
            }

            if (model.IsEnableToDelete)
            {
                var operationResult = await _ditchClient.Delete(model, ct);

                if (operationResult.IsSuccess)
                {
                    Trace("post", model.Login, operationResult.Error, model.PostUrl, ct);//.Wait(5000);\
                    return(operationResult);
                }
            }

            var result = await _ditchClient.Edit(model, ct);

            Trace("post", model.Login, result.Error, model.PostUrl, ct);//.Wait(5000);\
            return(result);
        }