我有一个从 SQL 数据库返回结果集 LEFT OUTER JOIN 的视图。我正在使用 MVC 3 根据结果集显示部分视图。但....
@foreach (var category in Model.FeeScheduleRates().Distinct())
{
<tr><td colspan="2">@category.Category</td></tr>
foreach (var item in Model.FeeScheduleRates()
.Where(i=>i.Cat_ID == category.Cat_ID))
{
<tr>
<td>@item.Fee_Title - @item.Description</td>
<td>@item.Amount</td>
</tr>
}
}
该视图没有循环通过第二个 foreach 循环。相反,它重复第一个条目的次数与匹配记录的次数一样多。因此,它应该为每个类别创建一个包含两列的行的表,然后显示该类别中的项目(标题、描述和金额。
为什么第二个 foreach 循环不起作用?
编辑:按要求查看
SELECT TOP (100) PERCENT a.Cat_ID, a.Fee_Title, a.Description, a.Amount, b.Category
FROM dbo.Fee_Schedule AS a LEFT OUTER JOIN
dbo.Fee_Categories AS b ON a.Cat_ID = b.Cat_ID
ORDER BY a.Cat_ID