为什么MVC操作链接没有正确呈现



我正在传递这个:

<%: Html.ActionLink("Edit", "EditCRMRequest", "CRM", new { Id = item.Id })%>

我正在浏览器中:

http://something.com/CRM/EditCRMRequest?Length=3

错误代码:

参数字典包含的参数"Id"的null条目方法的类型"System.Int32"不可为null中的"System.Web.Mvc.ActionResult EditCRMRequest(Int32)"ApricaCRMEvent.CRMController.CRMController"。可选参数必须是引用类型、可为null的类型,或者声明为可选参数。参数名称:参数

如果我在浏览器中明确地写下这篇文章,它会很好地工作:

http://something.com/CRM/EditCRMRequest?Id=3

正确方式:

<%: Html.ActionLink("Edit", "EditCRMRequest", "CRM", new { Id = item.Id },null)%>

没有像这样的过载方法:

Html.ActionLink(string text, string action, string controller, object routeValues)

如果你像上面一样写,Lenght=3代表"CRM"。控制器名称表现为路由值

正确的方法是:

Html.ActionLink(string text, string action, string controller, object routeValues, object htmlAttributes)

相关内容

  • 没有找到相关文章

最新更新