c# - 如何在 ActionLink 中传递 bool 值(从 View 到 Controller )?

标签 c# asp.net-mvc boolean

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

我的方法 Like 签名采用 Guid Id 和参数中的 bool

我尝试了以下内容:

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

但我收到它为空。

 public ActionResult Like(Guid id, bool? getBool) //gets null error without '?'
        {
            if (getBool == true){    

                return Content("Liked!");

            }else if (getBool == false){    

                return Content("Disiked!");
            }

我也尝试通过 View 模型修复它但没有成功:

var liked = new Test.ViewModel.LikeViewModel {LikeDislike = true};

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

但它不起作用,因为当我传递这些 boolean 值时它们仍然为空。知道如何将 boolean 值从 View 传递到 Controller 吗?

最佳答案

您需要为传递的参数命名,以便它与您的 Controller 操作相匹配:

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

关于c# - 如何在 ActionLink 中传递 bool 值(从 View 到 Controller )?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39881056/

相关文章:

c# - 在 c#\.NET 中使用自定义操作的 wix 3.5 静默安装程序

javascript - 在服务器端或使用 javascript 包含和排除文件

c - RUNOFF PSET3 - bool is_tie(int min) 函数在 Check50 中给出错误,无法删除

c - c 中的 IF 或 boolean 语句

swift - "Optional type '(()-> boolean )? ' cannot be used as a boolean; test for ' != nil ' instead"在委托(delegate)函数调用中

C#:有什么方法可以抑制类似于抑制警告消息的编译器错误?

c# - 用私有(private)属性(property)支持公共(public)属性(property)?

c# - 重新抛出无参数 catch 和什么都不做的区别?

.net - 在 web api 上接收时属性为 null

c# - 使用 MVC 5 从 SignalR 中的 Controller 调用 Javascript 方法