Asp.net mvc 4 基于模型中的集合的Webgrid行。MVC4
我正在尝试创建一个webgrid,它的行数为一列。行数将取决于模型中输入的电子邮件地址(字符串)数。以下是视图的代码:Asp.net mvc 4 基于模型中的集合的Webgrid行。MVC4,asp.net-mvc-4,webgrid,Asp.net Mvc 4,Webgrid,我正在尝试创建一个webgrid,它的行数为一列。行数将取决于模型中输入的电子邮件地址(字符串)数。以下是视图的代码: @model BarClients.Models.BarClientsViewModel @{ var grid = new WebGrid(Model.EmailAddressesOfChosenClient, ajaxUpdateContainerId: "gridContent"); int rowIndex = 0; if (Mode
@model BarClients.Models.BarClientsViewModel
@{
var grid = new WebGrid(Model.EmailAddressesOfChosenClient, ajaxUpdateContainerId: "gridContent");
int rowIndex = 0;
if (Model.EmailAddressesOfChosenClient != null)
{
foreach (var email in Model.EmailAddressesOfChosenClient)
{
grid.Rows.Add(new WebGridRow(grid, email, rowIndex++));
}
}
}
div id="gridContent"
@grid.GetHtml()
/div (arrows removed).
在@grid.GetHtml()上,我得到了一个错误:必须先绑定数据源,然后才能执行此操作
我想做的事有可能吗?非常感谢。您不需要添加行。当您调用
@grid.GetHtml()
时,它们将自动生成
向您展示如何使用WebGrid
,如果您愿意,甚至可以将其改进为安全键入
渲染网格的最低代码如下所示:
@{
var grid = new WebGrid(Model, defaultSort:"Name");
}
@grid.GetHtml()
其中模型
是对象的IEnumerable
,例如列表
。(嗯,还有一点比minimun多一点:这将按照Name
对网格进行排序,并且Name
必须是枚举对象的属性)
当然,您可以通过定义列、格式等对其进行“微调”。如果您认为这是问题的解决方案,请将其标记为答案,以便对其他人有用。