我正在尝试使用 ASP.NET MVC 3 Preview 1 中的 Razor ViewEngine,但在尝试使用Any()
扩展方法时遇到了问题。
这是我用来在控制器中设置属性的代码:
ViewModel.Comparisons = DB.Comparisons.Where(c => c.UserID == this.UserID).ToArray();
这是我尝试使用的视图中的代码Any()
:
@if (!View.Comparisons.Any()) {
<tr>
<td>You haven't not started any comparisons yet. @Html.Action("Start a new comparison?", "create", "compare")</td>
</tr>
}
我得到一个例外,上面写着:
'System.Array' does not contain a definition for 'Any'
我尝试将System.Linq
命名空间添加到 web.config 的两个pages\namespaces
部分,并@using System.Linq
在视图顶部添加一行,但两者都没有任何区别。我需要做什么才能访问 LINQ 扩展方法?
更新:看起来它与它是动态对象的属性有关 - 如果我手动将它转换为IList<T>
.