Возврат значения из Задачи <IActionResult> - PullRequest
0 голосов
/ 23 марта 2019

У меня есть этот метод OnGet, который запускается на странице бритвы, когда я нажимаю кнопку подтверждения.

Как вы можете видеть ниже, фактический код, который выполняется, находится в служебном классе, и, поскольку я не хочу прерывать процедуру создания потоков, метод служебного класса также возвращает задачу

Когда выполнение возвращаетЯ пишу "сообщение" в браузер.Моя проблема в том, что это не тот идентификатор, который я хочу отобразить для пользователя.это другой столбец в sql, который доступен в служебном классе.

Так что мой вопрос здесь заключается в том, как изменить мой вызов, чтобы он возвращал значение из метода класса Utility?

public async Task<IActionResult> OnGetApproveAsync(int id) {

        try {
            await Utils.ApproveOrder(Request, HttpContext, _context1, _context2, _cache, id);
            Message += "Order #" + id + " Approved\n";
            return Redirect("~/Orders/Orders");

        } catch (Exception e) {
            Message += e.StackTrace.ToString();
            return Redirect("~/Orders/Orders");
        }
    }

1 Ответ

0 голосов
/ 24 марта 2019

Измените Utils.ApproveOrder, чтобы вернуть Task<Utility> и обновите код модели

public async Task<IActionResult> OnGetApproveAsync(int id) {
    try {
        Utility util = await Utils.ApproveOrder(Request, HttpContext, _context1, _context2, _cache, id);
        //use util
        //..
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...