我目前正在开发一个项目,但它目前仅支持 .net Framework 2.0。我喜欢linq,但由于框架版本的原因我无法使用它。我想要的并不是 ORM 方面的东西,而是 Linq 的“可查询性”(这甚至是一个词吗?)。

到目前为止最接近的是 基因 但如果有更轻的东西可以为我做查询,那就更好了。

我也看过 NHibernate 看起来它可以接近做我想做的事情,但它有一个相当陡峭的学习曲线,并且映射文件不会让我过度兴奋。

如果有人知道能为我提供与 Linq 类似的查询接口(或者更好的是如何让 Linq 在 .net 2.0 框架上工作)的东西,我真的很想听听。

有帮助吗?

解决方案

看看这个:

http://www.albahari.com/nutshell/linqbridge.html

Linq 是几个不同的东西,我不能 100% 确定你想要哪些位,但上面的内容可能在某种程度上有用。如果您还没有一本关于 Linq 的书(我猜您没有),那么我发现“Linq In Action”很不错。

其他提示

您可能想查看 亚音速. 。它是一个使用 ActiveRecord 模式的 ORM。我非常确定它的大部分功能都适用于 .NET Framework 2.0。

回应 Lance 所说的 - SubSonic 查询语言有一个流畅的界面,虽然不如 LINQ 漂亮,但为您提供了一些好处(编译时间检查、智能感知等)。

LinqBridge 在 .NET 2.0 下运行良好,并且您可以获得所有 Linq 扩展和查询语言。您需要 VS 2008 才能使用它,但您已经知道这一点。

然而,Linq 它不是一个 ORM。这是一个查询语法。如果您想使用 Linq 查询数据库,您将需要 .NET 3.5。这是因为 2.0 没有提供将 Linq 代码转换为您最喜欢的数据库查询语言所需的机制。

换句话说,如果您需要 ORM, LinqBridge 不会帮助你. 。您需要查看提供的其他一些建议。

有一种方法可以在 .NET 2.0 Framework 中引用 LINQ,但我必须警告您,它 可能 违反框架的使用条款/EULA:

.NET 2.0 运行时上的 LINQ

首先。让 linq 本身在 2.0 上工作是不可能的。这是可能的,但实际上不能在测试环境之外做。

就 ORM/动态查询部分而言,您可以获得的最接近的是 SubSonic,我会向所有陷入 C# 2.0 的人推荐它

LinqBridge 看起来是一个非常好的起点,因为我有 VS2008,我只需要编译并部署到 .net 2.0 服务器。

我研究过 SubSonic,它也是一个有趣的替代方案,但 linqbridge 似乎提供了更接近的选择,因此我不必去学习新的 ORM/查询语法。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top