无法将 ID 传递给控制器



在我看来有这个

@Html.ActionLink("Lock", "Locked", new { id = item.Id })

我也测试了

@Html.ActionLink("Lock", "Locked", new { id = item.Id }, FormMethod.Post)

这在我的控制器中

[HttpPost, ActionName("Locked")]
public async Task<ActionResult> Locked(string userId)
{
    var locked = UserManager.IsLockedOutAsync(userId);
    if (false)
    {
        UserManager.SetLockoutEnabled(userId, true);
    }
    else
    {
        UserManager.SetLockoutEnabled(userId, false);
    }
    return View();
}

如果我悬停链接锁定,我的视图/链接中有一个 ID。但是,如果我在控制器中调试我的应用程序,字符串 userId 为"Null"。

我的目标是将用户 ID 发送到控制器。查找用户是否在数据库中被锁定。如果用户已锁定,请解锁用户。如果用户没有锁定,那么我应该锁定用户。数据库中的锁是真和假,我使用 asp.net 身份和列锁定启用

当您

的 Action 方法需要参数 userId 时,您id发布参数。因此,这将导致null,因为操作方法签名上没有匹配的参数。

使用这个:

@Html.ActionLink("Lock", "Locked", new { userId = item.Id })

相关内容

  • 没有找到相关文章

最新更新