3

如果我有一些带有 LINQ 扩展的东西,比如

// Declaration: Code Behind
Protected MyList As IList(Of Object)
// Code Before
MyList.First()

在后面的代码中,VS 总是抱怨类似'First' is not a member of 'System.Collections.Generic.IList {...}. 一切正常,我只是想摆脱这些烦人的错误。

我试过了:

<%@ Import namespace="System.Linq" %>

在我的 ASPX 页面中,但它没有帮助。

我还尝试了以下方法,但都没有奏效:

  • 在 web.config 的 pages-node 中添加命名空间
  • Imports System.Linq在后面的代码中

PS:有趣的是,Resharper 不会将其标记为错误...

4

2 回答 2

0

您可能很久以前就解决了您的问题,但是对于下一个人:

您收到的消息是正确的,但没有帮助:“First”实际上不是 List 类的成员。然而,第一个是附加到 List 类(或任何实现 IQueryable 接口的类,如 List 类)的扩展方法。
不幸的是,包含 First 方法的类位于System.Linq命名空间中,除非您为代码提供命名空间指令(Import/using 语句),否则编译器无法找到该类。如果您将这些语句中的任何一个添加到代码文件中,您的问题应该会消失:

Imports System.LINQ
Using System.LINQ

但是,将声明添加到您的 .aspx 文件将无济于事。

于 2014-08-10T18:34:53.480 回答
-1

我使用“ System.Collections.Generic ”命名空间测试了下面的代码,它工作正常......

     List<int> intList = new List<int>();
               intList.Add(5);
               intList.Add(10);
               intList.Add(15);
               intList.Add(20);
               intList.Add(25);
               int x = intList.First<int>();
               int y = intList.Last<int>();

这满足你的要求了吗??

于 2012-12-17T17:21:25.353 回答