我不知道是否有人能帮助我在这里。我的声音听起来有点像一个thicko道歉,但我是新来的MVC3,我试图从一个视图到操作方法传递2倍的值,但它只是不打公平!
HTML:
@Html.ActionLink("ASSIGN", "AssignTokenToDataTemplate", "HostHtmlTokenManager",
new { htmlTokenId = item.Id }, new { htmlDataTemplateId = 1 })
动作方法:
public ActionResult AssignTokenToDataTemplate(int htmlTokenId, int htmlDataTemplateId)
{
// Do some database stuff here
return View("AssignAnExistingTokenToHtmlDataTemplate", new {templateId = htmlDataTemplateId});
}
我想两个整数传递到AssignTokenToDataTemplate操作方法,但我无法得到它的工作?
任何人都可以看到我要去哪里错了吗? :(
你可以通过使用routeValues
参数都值:
@Html.ActionLink(
"ASSIGN", // linkText
"AssignTokenToDataTemplate", // actionName
"HostHtmlTokenManager", // controllerName
new { // routeValues
htmlTokenId = item.Id,
htmlDataTemplateId = 1
},
null // htmlAttributes
)
尝试
@Html.ActionLink("ASSIGN", "AssignTokenToDataTemplate", "HostHtmlTokenManager",
new { htmlTokenId = item.Id , htmlDataTemplateId = 1 })
然而,你可能要考虑使用模型(一种你自己的),以使他们一起传递为一体。
你必须包括在匿名类两个参数:
@Html.ActionLink("ASSIGN", "AssignTokenToDataTemplate", "HostHtmlTokenManager",
null, new { htmlDataTemplateId = 1, htmlTokenId = item.Id })
尝试;
@Html.ActionLink("ASSIGN", "AssignTokenToDataTemplate", "HostHtmlTokenManager",
new { htmlTokenId = item.Id, htmlDataTemplateId = 1 })
马特