我在网栅的嵌套上遇到了麻烦。
只要我只需要在另一个内部有一个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中没有错误,但是当我尝试运行应用程序时,它返回为error:
编译器错误消息: CS1502: System.Web.Helpers.WebGrid.Column( string,string,System.Func,string,bool)的最佳重载方法匹配有一些无效的参数
有指向此点的指针:
grid.Column("Resource", format: (item) =>
难道不可能有递归嵌套的网络网格,还是我做错了什么?
发布于 2012-08-14 16:08:15
重复两次item变量是有问题的。尝试重命名它:
grid.Column("Resource", format: (item) =>
{
WebGrid resGrid = new WebGrid(item.Resource);
return resGrid.GetHtml(
columns: resGrid.Columns(
resGrid.Column("Name"),
resGrid.Column("Parameters", format: (resource) =>
{
WebGrid resParamGrid = new WebGrid(resource.Parameter);
return resParamGrid.GetHtml(
columns: resParamGrid.Columns(
resParamGrid.Column("Name")
),
displayHeader: false
);
})
),
displayHeader: false
);
})https://stackoverflow.com/questions/11955067
复制相似问题