我在嵌套 webgrids 时遇到了一些麻烦。
只要我只需要在另一个 webgrid 中有 1 个 webgrid 就可以了,但是一旦我尝试将 webgrid 嵌套在已经嵌套的 webgrid 中,它就会失败。
这是我的代码:
@grid.GetHtml(columns:
grid.Columns(
grid.Column("Name"),
grid.Column("Variants", format: (item) =>
{
WebGrid varGrid = varGrid = new WebGrid(item.Variant);
return varGrid.GetHtml(
columns: varGrid.Columns(
varGrid.Column("Name")
),
displayHeader : false
);
}),
grid.Column("Resource", format: (item) =>
{
WebGrid resGrid = new WebGrid(item.Resource);
return resGrid.GetHtml(
columns: resGrid.Columns(
resGrid.Column("Name"),
resGrid.Column("Parameters", format: (item) =>
{
WebGrid resParamGrid = new WebGrid(item.Resource.Parameter);
return resParamGrid.GetHtml(
columns: resParamGrid.Columns(
resParamGrid.Column("Name")
),
displayHeader: false
);
})
),
displayHeader: false
);
}),
grid.Column("Parameter", format: (item) =>
{
WebGrid parGrid = new WebGrid(item.Parameter);
return parGrid.GetHtml(
columns: parGrid.Columns(
parGrid.Column("Name")
),
displayHeader: false
);
})
)
)
所以网格有另一个网格,Resources
。每个Resources
网格都有一个包含参数的网格。
在 VS 中没有错误,但是当我尝试运行应用程序时,它返回错误:
“编译器错误消息:CS1502:'System.Web.Helpers.WebGrid.Column(string, string, System.Func, string, bool)' 的最佳重载方法匹配有一些无效参数”
用指向这个地方的指针:
grid.Column("Resource", format: (item) =>
不可能有递归嵌套的网络网格,还是我做错了什么?