将多个参数传递给控制器

时间:2012-06-25 13:49:16

标签: asp.net-mvc razor

我有一种情况需要将两个参数传递给一个动作。我一直在使用下面的代码将参数传递给动作但是我没有看到我如何传递多个参数。我该怎么做?

 @Html.ActionLink("Add Visit", "Create", "Visit", new { id = Model.Id }, null)

BTW - ASP.NET MVC 4 RC

2 个答案:

答案 0 :(得分:4)

您应该用逗号分隔参数,如下所示:

 @Html.ActionLink("Add Visit", "Create", "Visit", 
                  new { id = Model.Id, secondParameter = Model.yourValue }, null)

查看MSDN文档以了解ActionLink方法。

希望它有所帮助!

答案 1 :(得分:0)

我从名为T4MVC的CodePlex添加。 这将通过使用T4模板和部分类的组合将所有字符串转换为方法调用。 它允许您将ActionLink方法转换为语法检查方法调用。

@Html.ActionLink("Add Visit", "Create", "Visit", new { id = Model.Id }, null)

将变成

@Html.ActionLink("Add Visit", MVC.Visit.Create(Model.Id))

@Html.ActionLink("Add Visit", "Create", "Visit", new { id = Model.Id, Param2 = "Param2", Param3= "Param3Value" }, null)
@Html.ActionLink("Add Visit", MVC.Visit.Create(Model.Id, "Param2", "Param3Value"))

当您打开已编译的视图时,它可以节省生命。