【发布时间】:2014-04-29 13:59:24
【问题描述】:
我在查看页面中收到上述错误和 WebGrid.column 错误的“无效参数”。
//查看
@{
WebGrid grid = new WebGrid(Model.LoadProductDetails());
@grid.GetHtml(
tableStyle: "grid",
fillEmptyRows: false,
headerStyle: "gvHeading",
alternatingRowStyle: "gvAlternateRow",
rowStyle: "gvRow",
footerStyle: "gvFooter",
mode: WebGridPagerModes.All,
firstText: "<< First",
previousText: "< Prev",
nextText: "Next >",
lastText: "Last >>",
columns: new[] {
grid.Column("ProductId",header: "ID"),
grid.Column("ProductName",header: "Product"),
grid.Column("Price"),
grid.Column("Qunatity"),
grid.Column("ReorderLevel", header: "R.O.L."),
grid.Column("ContactusId", header: "Action", canSort:false, format: @<text> @Html.Raw("<img src='/img/edit.png' title='Edit' onclick='EditProduct("+ item.ProductId ")' />") @Html.Raw("<img src='/img/delete.png' title='Delete' onclick='DeleteProduct("+ item.ProductId +")' />") </text>)
})
}
错误在格式: 附近的最后一列(ContactUsId)中抛出。我哪里错了?
请帮忙。
【问题讨论】:
-
看起来您正试图将客户端 HTML 注入服务器端函数调用(这反过来会生成客户端输出)。这与 MVC 的工作方式相反(代码注入页面 HTML)。您需要将这些
@<>转换为 C# 字符串。然后可以在服务器端进行处理,生成的GetHtml方法会将最终结果注入到输出中。 -
@TrueBlueAussie:你能分享一段代码吗?
-
当然。下面的例子。
标签: c# asp.net-mvc-3 razor webgrid