为什么 html 操作 link 在使用 id 时不传递 null Id 值

why html action link does not pass the null Id value when use an id

我使用了下面的html操作link

 @Html.ActionLink("Book Now", "EnquiryForCruise", "Cruise", new { sid = "Whosebug" })

它导航到正确的控制器操作结果但 ID 值为空 路径是 localhost:15777/Cruise/EnquiryForCruise?Length=6

下面是我的控制器

  public ActionResult EnquiryForCruise(string sid)
  {

     return View();
  }
//in here id value is null

我以前用过这个,效果很好。我不知道为什么 this.hope 你的帮助。

您需要在 Global.asax 的 RegisterRoutes 中检查您的路线。参见 ASP.NET Routing

请试试这个:

@Html.ActionLink("Book Now", "EnquiryForCruise", "Cruise", new { sid = "Whosebug" }, null)

目前没有用于采用文本、动作名称、控制器名称和路由参数的 ActionLink 的重载。您缺少 Html 属性。

试试下面的方法:

@Html.ActionLink("Book Now", "EnquiryForCruise", "Cruise", new { sid = "Whosebug" }, null)