根据this,较旧的MVC支持异步操作,如果它们满足一些签名要求。
我有以下行动:
public async Task<IActionResult> ShowDataAsync()
{
await GetData();
return View();
}
private async Task GetData()
{
eredmeny = await client.GetData();
ViewBag.Eredmeny = eredmeny;
RedirectToAction("ShowData", "Blog");
}
我有以下查看代码:
@Html.ActionLink("Show data",actionName: "ShowData", controllerName: "Blog")
生成的链接如下所示:
<a href="">Show data</a>
如果我将其更改为同步:
public IActionResult ShowData()
{
GetData();
return View();
}
然后它会生成正确的链接:
<a href="/Blog/ShowData">Show data</a>
我应该设置什么来使MVC 6支持异步操作?
答案 0 :(得分:2)
您的操作方法名称为ShowDataAsync
,您的视图代码需要反映出来。
@Html.ActionLink("Show data",actionName: "ShowDataAsync", controllerName: "Blog")