MVC3中单个MvcContrib.Grid列中的多个Html.ActionLink()

jT1*_*014 3 mvccontrib-grid asp.net-mvc-3

我试图围绕正确的语法来实现以下目标 - 或者至少要知道它是否可行,或者是否有更好的替代解决方案.

好的,开箱即用,当您使用ASP.Net MVC3下的List脚手架生成强类型视图时,您会得到一个简单的表,其中包含一个类似于两个或三个Html.ActionLink()项的列,表示像这样的常见操作:编辑| 细节| 删除

我想使用MvcContrib网格并执行相同的操作,但我无法找出正确的语法来使其工作.到目前为止,在我的Index.cshtml中,我有以下代码段:

@(
        Html.Grid(Model.PagedList).AutoGenerateColumns()
            .Columns(column => 
            {
                column.For(f => Html.ActionLink("Edit", "Edit", new { id = f.itemID}))
                .Named("");
            })
            .Sort(Model.GridSortOptions);
    )
Run Code Online (Sandbox Code Playgroud)

但是这只给了我一行"编辑",我希望列包含三个动作链接 - 编辑,设备,删除 - 所有三个具有特定行的相同itemID.这可以实现吗?如果是这样,怎么样?如果没有,有替代方案吗?

Dar*_*rov 5

您可以使用自定义列:

columns.Custom(
    @<text>
        @Html.ActionLink("edit", "edit", new { id = item.Id }) |
        @Html.ActionLink("details", "details", new { id = item.Id }) |
        @Html.ActionLink("delete", "delete", new { id = item.Id }) |
    </text>
);
Run Code Online (Sandbox Code Playgroud)