转换Lambda表达式C#2.0

csL*_*ijo 2 c#

如何转换表达式

v => names.Add(v); // Consider names as List<string> and v as string 
Run Code Online (Sandbox Code Playgroud)

进入c#2.0?

Jon*_*eet 8

您可以使用匿名方法:

Action<String> action = delegate (string v) { names.add(v); };
Run Code Online (Sandbox Code Playgroud)

如果将现有的lambda表达式转换为委托,那将会有效.现有的lambda表达式转换为表达式树时,它将无法工作.

(你真的需要使用C#2吗?Eek.不要忘记你可以使用C#3或更高版本,但仍然以.NET 2为目标,如果这是真正的要求.使用C#3及更高版本的生产力的好处真正使它可以升级你的Visual Studio版本......)

  • @csLijo:还记得.NET 3.5只是带有一些额外程序集的.NET 2.0 SP2.假设您不使用新功能,它就像服务包一样安全,因此只会像您正在使用的新功能一样危险. (3认同)