无效的表达式术语'>'

And*_*s01 3 c# visual-studio-2005 list c#-2.0

我使用Microsoft Visual Studio 2005与.NET 2.0.我有一个用于选择产品的组合框.在我选择一个产品后,我在一个文本文件中搜索它 - 最后我想在文件中找到该产品的行.但是使用以下代码

int lineNo = lineList.IndexOf(lineList.Find(x => x.StartsWith(select)));
Run Code Online (Sandbox Code Playgroud)

编译器给出错误:

Invalid expression term '>' 
Run Code Online (Sandbox Code Playgroud)

这是.NET框架版本的问题吗?

Jon*_*eet 14

我使用Microsoft Visual Studio 2005和2.0 Net.

这意味着你正在使用C#2.

但是你正在尝试使用lambda表达式(=>) - 这是C#3中引入的一个特性.它不是你正在使用的框架版本- 你可以在VS2008或更高版本中编写相同的代码,仍然以.NET 2为目标.这是您正在使用的语言版本.

您可以使用匿名方法在C#2中执行类似的操作:

int lineNo = lineList.IndexOf(lineList.Find(delegate(String x)
{ 
   return x.StartsWith(select);
}));
Run Code Online (Sandbox Code Playgroud)