我是ASP.NET MVC的新手。我的数据库中有2个表名为" tbl_Project"和" tbl_Note"。每个项目都可以有一个或多个笔记,因此我保留/保存" ProjectID" " tbl_Note"。
中的变量我想做什么:在项目列表所在的页面上,我想显示每个项目的注释总数。我尝试了一些事情,但我已经失败了。
这是我的项目列表页面:
@if(Model.Any())
{
<table class="table table-striped table-hover table-bordered" id="sample_editable_1">
<thead>
<tr>
<th>Total Note</th>
<th>Project Name</th>
<th>Contract Start Date</th>
<th>Contract End Date</th>
</tr>
</thead>
@foreach (var item in Model)
{
<tbody>
<tr>
<td>
<!-- Total number of notes will come here -->
</td>
<td>
<p><a href="@Url.Action("Detail", "Project", new { ID = item.ID })" data-tooltip="@(item.Information != null? item.Information:"")">@item.ProjectName</a></p>
</td>
<td>
@item.ContractStartDate.Value.ToString("dd.MM.yyyy");
</td>
<td>
@item.ContractEndDate.Value.ToString("dd.MM.yyyy");
</td>
</tr>
</tbody>
}
</table>
}
else
{
<p>Project is not available!</p>
}
我尝试过这样的事情,但它不起作用:
@if(item.tbl_Note != null)
{
if(item.tbl_Note.ProjectID == Model.ProjectID)
{
@Model.Sum(b => b.tbl_Note.ProjectID.Count)
}
}
这一行给出了一个错误:item.tbl_Note.ProjectID,错误是:&#39; ICollection&#39;不包含&#39; ProjectID的定义,也没有扩展方法&#39; ProjectID&#39;接受类型&#39; ICollection&#39;的第一个参数。可以找到。
如何计算笔记总数?如果您要插入任何其他代码块,请告诉我。
答案 0 :(得分:0)
根据错误,item.tbl_Note
属于ICollection<T>
,您正在寻找ProjectID
属性。
将其更改为:
@if(item.tbl_Note != null)
{
@item.tbl_Note.Count
}