使用async和await返回MVC中的RedirectToAction

Amo*_*mol 5 c# asp.net-mvc async-await

我想使用Async返回一个动作并等待dot net 4.5中的功能.我使用了以下代码.

public async Task<ActionResult> DisplayDashboard()
    {
        await Task.Run(() =>
        {
            if (true)
            {
                return RedirectToAction("Index", "Home");
            }
            else
            {
                return RedirectToAction("Error", "Home");
            }
        });            
    }
Run Code Online (Sandbox Code Playgroud)

它给出了以下错误,"无法将lambda表达式转换为委托类型'System.Action',因为块中的某些返回类型不能隐式转换为委托返回类型".

任何人都可以建议我如何使用任务执行RedirectToAction.

Bob*_*ust 7

    public async Task<ActionResult> DisplayDashboard()
    {
        return await Task.Run<ActionResult>(() =>
        {
            if (true)
            {
                return RedirectToAction("Index", "Home");
            }
            else
            {
                return View("Index");
            }
        });
    }
Run Code Online (Sandbox Code Playgroud)