Razor视图引擎 - 调用Any Function时的异常

时间:2010-07-31 06:02:06

标签: c# asp.net-mvc razor

我正在尝试将现有的ASPX页面转换为cshtml格式。

原始ASPX看起来像这样:

  <%
    if (!Model.ObjectList.Any())
    {

      %>
      <tr>
          <td>No data found</td>
      </tr>
      <%
     }

等效的Razor版本如下所示:

@if (!Model.ObjectList.Any())
 {
 <tr>
   <td>No data found</td>
 </tr>
 }

虽然原始语法工作得很好,但等效操作失败并显示以下消息

  

'System.Collections.Generic.List'   不包含的定义   '任意'

我在想 a)为什么会发生这种情况 b)如何解决此问题。我在CSHTML文件中添加了对System.LINQ命名空间的引用,但无济于事。

非常感谢任何帮助,

JP

3 个答案:

答案 0 :(得分:3)

感谢大家的回答。结果证明这是一个ID 10 T ....

基本上我忽略了强烈输入我的观点。我正在使用

@inherits System.Web.Mvc.WebViewPage<dynamic>

而不是使用

@inherits System.Web.Mvc.WebViewPage<MyViewModel>

使用正确的类型修复了问题。 再次感谢, JP

答案 1 :(得分:0)

您需要导入正确的命名空间:

using System.Linq;

答案 2 :(得分:0)

您也可以这样做:

@if (Model.ObjectList.Count == 0)
 {
 <tr>
   <td>No data found</td>
 </tr>
 }