有没有人能够在.Net 2.0网站上使用Linqbridge?我在普通的.Net 2.0控制台上使用它没有问题,但当我在网站中使用这些方法时,我会得到
Feature 'extension method' cannot be used because it is not part of the ISO-2 C# language specification发布于 2011-03-17 13:31:43
我认为错误信息非常清楚。在2.0中不支持扩展方法。如果您想在2.0中使用扩展方法,则需要通过删除this并显式调用它来修改它。
如果你有:
public static class ExtensionMethods {
public static bool IsOdd(this int x) {
return x % 2 != 0;
}
}那么像number.IsOdd()这样的ExtensionMethods和代码就不能编译。
您需要删除IsOdd方法签名中的this,并将其作为ExtensionMethods.IsOdd(number)调用,才能使其在2.0下工作。
如果我没记错的话,这就是LinqBridge的作者所使用的方法。
希望这能有所帮助。
发布于 2011-03-18 11:30:37
也许你混淆了.NET和C#的版本。LINQBridge支持LINQ2.0,但您仍然需要LINQ3.0或更高版本(即C#或更高版本)才能使用扩展方法或.NET语法糖编译代码。编译后,程序集在.NET 2.0运行时运行时不会出现任何问题。这就是LINQBridge的好处。
https://stackoverflow.com/questions/5334736
复制相似问题