我想知道是否有可能为模型中的项目数量做一个计数器,我知道使用list是可能的,但id更喜欢使用IEnumerable用于项目目的。如果可以在javascript中进行持续更新,但在MVC和Javascript中没有足够的经验,那会更好。
-Controller -
public class ModelController : Controller
{
private JobData db = new JobData();
//
// GET: /Model/
public ActionResult Index()
{
var Model = db.Models.OrderByDescending(model => model.ModelType);
int count = Model.Count();
return View(Model.ToList());
}
- 查看 -
@model IEnumerable<JobTracker.Models.Model>
@{
ViewBag.Title = "Camera Models";
}
<script type="text/javascript" src="~/Scripts/Table.js"></script>
<table id="tfhover" class="tftable" border="1">
<tr>
<th>
@Html.DisplayNameFor(model => model.ModelType)
</th>
<th></th>
</tr>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.ModelType)
</td>
<td>
@Html.ActionLink("Edit", "Edit", new { id=item.ModelID }) |
@Html.ActionLink("Details", "Details", new { id=item.ModelID })
@* @Html.ActionLink("Delete", "Delete", new { id=item.ModelID })*@
</td>
</tr>
}
</table>
答案 0 :(得分:15)
您可以使用@Model.Count()
在任何地方显示计数 - (从评论部分转到@MukeshModhvadiya)
答案 1 :(得分:1)
您在View for MVC中使用Model.Count()。如果您在javascript中需要它,您可以通过以下方式获得此值:
<script type="text/javascript">
var count ='@Model.Count()';
</script>
您必须在View文件中编写脚本。单独的js文件此代码不起作用。我们无法在单独的js文件中访问Model值。