在剃刀嵌套的webgrid中格式化

时间:2011-10-30 19:03:15

标签: asp.net-mvc-3

我在另一个webgrid中嵌入了一个webgrid,如Razor Nested WebGrid

所示

但是当我尝试格式化嵌套webgrid中的列时,它会抛出一条错误,指出mastergrid中的列包含无效的参数。

以前有人遇到过这个问题吗?

有什么建议吗?

由于 ARNAB

1 个答案:

答案 0 :(得分:1)

我猜您的问题是您尝试在内部item参数中使用相同的参数名称format。您不能在嵌套的lambda表达式中使用相同的参数名称。您可以找到有关lambda表达式的更多here。 因此,您需要为内部格式使用不同的参数名称(例如subItem):

...
    @topGrid.GetHtml(columns:
        topGrid.Columns(
            topGrid.Column("Index"),
            topGrid.Column("SubItems", format: (item) =>
            {
                WebGrid subGrid = subGrid = new WebGrid(item.SubItems);
                return subGrid.GetHtml(
                        columns: subGrid.Columns(
                        subGrid.Column("A", format: (subItem) => string.Format("Formatted: {0}", subItem.A)),
                            subGrid.Column("B")
                        )
                    );
            })
        )
    )
...