Controller 返回數據時直接投影行號,避免前端 JS 計算或 View 裡維護計數器。
public ActionResult Index() {
var data = _repo.GetAll() // IQueryable/IEnumerable
.Select((item, index) => new {
RowNumber = index + 1,
item.Id,
item.Name,
item.CreateTime
})
.ToList();
return View(data);
}
<table>
@foreach (var row in Model) {
<tr>
<td>@row.RowNumber</td>
<td>@row.Name</td>
<td>@row.CreateTime.ToString("yyyy-MM-dd")</td>
</tr>
}
</table>
若使用分頁 (PageIndex, PageSize),行號計算:
RowNumber = (pageIndex - 1) * pageSize + index + 1;
或在 View 中用 `