Неверная операция. Ошибка подключения закрыта при использовании Petapoco FetchAsync - PullRequest
0 голосов
/ 22 января 2020

Я использую petapoco.compiled v6.0.441 в моем MVC проекте. Это работает нормально для всех синхронных операций. Но когда я пытаюсь использовать FetchAsyn c <>, выдается ошибка «Недопустимая операция». Соединение закрыто ».

//controller
public async Task<ActionResult> Index()
{
     IEnumerable<UserEntity> users= await userService.GetAllAsync();
     return View(users);
}

//user service
public Task<List<UserEntity>> GetAllAsync()
{
    return userrepository.GetAllAsync();
}

//user repo - trial 1
public Task<List<UserEntity>> GetAllAsync()
{
    var res = db.FetchAsync<UserEntity>("select query");

    return res;
}

also tried
//user repo - trial 2
public async Task<List<UserEntity>> GetAllAsync()
{
    var res = await db.FetchAsync<UserEntity>("select query");

    return res;
}

Не уверен, что приведенная выше реализация верна или я что-то пропустил. Нужно ли настраивать petapoco для поддержки Asyn c?

Спасибо, Нарендра

1 Ответ

1 голос
/ 23 января 2020

Я вижу это регулярно, скорее всего, вы пропускаете экземпляр db в несколько потоков.

Шаги для проверки и подтверждения. Изолируйте web / api и выполните один запрос. Если отдельные запросы работают, проблема описана.

...