1

我有一个从 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
4

0 回答 0