如何在ActionLink内部传递bool值(从视图到控件)

本文关键字:视图 控件 bool ActionLink 内部 | 更新日期: 2023-09-27 18:11:36

我必须在里面传递一个bool -> "@Html.ActionLink(" ", "Like", new { id = Model.Id @*, Pass bool value here *@}".

我的方法Like签名采用一个Guid Id和一个bool作为参数。

I tried with with:

   bool passBool = true;
   @Html.ActionLink("Like!", "Like", new { id = Model.Id, passBool}
   @Html.ActionLink("Disike!", "Like", new { id = Model.Id, passBool = false}

但是我接收它为null。

 public ActionResult Like(Guid id, bool? getBool) //gets null error without '?'
        {
            if (getBool == true){    
                return Content("Liked!");
            }else if (getBool == false){    
                return Content("Disiked!");
            }

我还试图通过视图模型修复它,但没有成功:

var liked = new Test.ViewModel.LikeViewModel {LikeDislike = true};
 @Html.ActionLink("Like!", "Like", new { id = Model.Id, liked}

但是它不起作用,因为当我传递它们时,这些bool值仍然是空的。知道如何将bool值从视图传递到控制器吗?

如何在ActionLink内部传递bool值(从视图到控件)

你需要给你要传递的参数命名,使它与你的控制器动作相匹配:

@Html.ActionLink("Like!", "Like", new { id = Model.Id,getBool= passBool}