Не удается получить доступ к удаленному объекту при использовании внедрения зависимостей в .NET Core - PullRequest
0 голосов
/ 03 июля 2019

Я хочу выполнить метод отдельно. Пожалуйста, скажите мне, как это сделать.

вот мой код

var record = await _verificationCodeRepository.FindOneAsync(v =>
            v.SerialNumber == request.SerialNumber
         && v.Type == request.Type
         && v.Code == request.Code
         && v.CreatedOn.AddMinutes(1) >= DateTime.UtcNow);
 Guid codeId = record.Id;
 DeleteCode(codeId);

 return new VerifyPINCodeResponse(true, null);

Я хочу сделать это без ожидания.

вот мой метод удаления

public async Task DeleteCode(Guid id)
{
    try
    {
        KYCVerificationCode kYCVerificationCode = new KYCVerificationCode();
        kYCVerificationCode.Id = id;

        var deletedResult = await _verificationCodeRepository.DeleteAsync(kYCVerificationCode);

        if (deletedResult == null)
        {
            _logger.LogWarning("Failed to delete verification code record of ID: " + id);

        }
    }
    catch (Exception e)
    {
        _logger.LogWarning("An error occurs while deleting verification code record of ID: " + id + " Error:" + e.ToString());
    }

}

, когда я выполняю этот код, возникает эта ошибка

Невозможно получить доступ к удаленному объекту.Распространенной причиной этой ошибки является удаление контекста, который был разрешен путем внедрения зависимости, а затем попытка использовать тот же экземпляр контекста в другом месте вашего приложения.Это может произойти, если вы вызываете Dispose () для контекста или заключаете контекст в оператор using.Если вы используете внедрение зависимости, вы должны позволить контейнеру введения зависимости позаботиться об удалении экземпляров контекста.Имя объекта: 'KYCDBContext'.

Пожалуйста, помогите мне решить эту проблему

...