MVC 中的异步 link?

Async link in MVC?

我的 MVC 应用程序中有一个 url 转到这样的控制器

    public ActionResult Activate(int Id)
    {
        var Item = from a in db.users
                   where a.users.Equals(Id)
                   select a;

        users x = Item.FirstOrDefault();

        x.Aktiv = true;

        db.SaveChanges();
    }

是否有可能当用户在视图中单击 link 时,它会转到控制器并在后台执行此操作并 returns 结果,有点像 ajax 在 jquery 我猜?

控制器方法不能异步,解释很简单,客户端如何知道异步方法何时准备好?就像您自己建议的那样,您应该使用 ajax 进行异步调用(在 mvc Ajax.Actionlink 中)。

Ajax.Actionlink 上有一篇很好的文章:see this site

将 MS Ajax 库添加到您的视图中:

    <script src="~/Scripts/MicrosoftAjax.js" type="text/javascript"></script>
    <script src="~/Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>   

要调用您的控制器操作结果,您可以使用 Ajax 调用:

    @Ajax.ActionLink("Activate Me", "Activate", new AjaxOptions { Id = "1" })