试图计算论坛板下的主题数量

时间:2014-03-14 18:25:35

标签: asp.net-mvc entity-framework razor

以下是我目前的情况:

@Model.TPGForumTopicQuery.Select(m => m.closed != true && m.deleted != true)
.Where(m => m.TPGForumBoardID == item.boardID).Count()

这会返回一个奇怪的错误:

An error occurred during the compilation of a resource required to service this request.
Please review the following specific error details and modify your source code appropriately.

如果我删除.Select它可以正常工作并计算论坛板下的所有主题。但主题可以标记为“关闭”。或者'活跃的'我需要省略那些计数。

以上代码在@foreach loop范围内。所以item.boardID正在讨论论坛委员会。

1 个答案:

答案 0 :(得分:2)

请勿在{{1​​}}中执行过滤。在Select

中执行此操作
Where

进行一些优化:

而不是@Model.TPGForumTopicQuery.Where(m => m.TPGForumBoardID == item.boardID && m.closed != true && m.deleted != true).Count() ,请m.closed != true

!m.closed

而不是在@Model.TPGForumTopicQuery.Where(m => m.TPGForumBoardID == item.boardID && !m.closed && !m.deleted).Count() - 子句之后得到Count,你可以将where子句传递给Where

Count()