|
1
81
奇怪的是没人提到 LINQBridge . 这个非常棒的小项目是LINQ(IEnumerable,但没有IQueryable)及其对.NET2.0的依赖(Func、Action等)的一个后端口。以及:
|
|
|
2
34
有一些“黑客”涉及使用Stask.Cy.DLL从3.5框架,使它运行与.NET 2,但我个人不希望使用这样一个有点动摇的基础。 请看这里: LINQ support on .NET 2.0
(需要.net 2.0 SP1,我不知道捆绑System.Core.dll是否违反EULA) |
|
|
3
11
理论上是的,前提是您分发特定于LINQ的程序集和任何依赖项。然而,这违反了微软的授权。Scott Hanselman写了一篇关于 Deploying ASP.NET MVC on ASP.NET 2.0 这和你想做的事情很相似。 |
|
4
7
您可以使用mono(.NET for Linux)的LINQ源代码在.NET 2.0上运行LINQ。
有人在这里做过:
|
|
|
5
6
简短答复:
基本上,任何只有“语法糖”和新编译器(C#3.0、VB9.0)以2.0兼容IL的形式发出的东西都可以工作。这包括LINQ使用的许多特性,例如匿名类、作为匿名委托的lambda、自动属性、对象初始值设定项和集合初始值设定项。
一些LINQ特性使用新3.5程序集中的类、接口、委托和扩展方法(如System.Core.dll)。重新分发这些程序集违反了许可证,但可以重新实现。使用扩展方法只需要声明一个空
LINQtoSQL和LINQtoEntities需要许多新类(
|
|
|
6
5
我不确定C。
但是,您必须自己实现一些LINQ方法。 LINQ使用语法转换将查询转换为可执行代码。基本上,需要这样的代码:
对于3.5框架附带的LINQ功能,这些方法被实现为IEnumerable或IQueryable上的扩展方法(还有一系列方法也适用于数据集)。 默认IEnumerable扩展方法在System.Linq.Enumerable中定义,如下所示:
表达式树版本使您能够获取提供给子句的表达式的树表示形式,然后可以使用这些表达式生成SQL代码(或您想要的任何其他内容)。 您可以在大约一天左右的时间内创建自己版本的LINQ to对象。一切都很直截了当。
|
|
|
7
3
不,因为虽然您认为LINQ实际上只是语法糖,但它实际上大量使用了表达式树——这是.NET2.0中缺少的特性。 也就是说.NET3.5只是建立在.NET2.0之上,这就是为什么IL看起来没有“不同”或“特殊”的原因。
|
|
|
Roy · SQL C#:结果未返回任何内容。读取() 8 年前 |
|
|
Pablo · 如何在Regex.replace中仅替换捕获组? 10 年前 |
|
|
rudimenter · 为什么以下代码编译和执行成功? 12 年前 |
|
|
Rachel · 是否有任何原因在该代码块的List<T>中找不到现有项? 12 年前 |
|
|
oshirowanen · 动态超级链接 12 年前 |
|
|
sab669 · SharpSVN不迭代所有子目录和文件 12 年前 |
|
|
ForeverWintr · Excel中的奇怪行为。工作表。单元格[行,列] 13 年前 |