我之前在VB的Windows窗体项目中基于lambdas构建了一小块代码,它工作得很好,但它给了我“期望的表达式”警告(这会阻止编译...应该被认为是错误的,不是吗?)当我将代码复制到ASP.NET项目中时。我能看到的唯一区别是,如果我创建一个Windows窗体项目与一个Web项目...在一个中工作,在另一个中不起作用。
即使像这样基本的东西也不能工作:
delegate function stringify(byval x as object) as string
public sub test()
dim f as stringify = Function(x) x.ToString()
dim s as string = f(5)
end sub有没有办法让Lambdas在ASP.NET中工作?或者,有没有什么设置把我的VB版本降低了一两级(因为它们显然只能在9.0或更高版本中工作,但我不知道如何分辨我使用的是哪个版本)?
编辑:啊!LinqBridge似乎不适合我。我得到了对象(Func(Of TResult)),但没有lambda支持。我想这是我希望的丧钟吧?或者,在使用它时有没有什么明显的遗漏(拖动到bin、引用中的目标、导入System.Linq)?
发布于 2010-08-14 03:27:45
如果您使用LinqBridge,则可以
它是Linq在.Net 2.0上的一个实现
正如他们所说
LINQBridge是Framework3.5的Enumerable类中所有标准查询操作符的重新实现。
..。
事实上,LINQBridge允许你在Framework2.0中使用C# 3.0中的几乎所有功能,包括扩展方法、lambda函数和查询理解。它唯一不支持的特性是将lambda编译为表达式树(即表达式)。
https://stackoverflow.com/questions/3480084
复制相似问题