Linq to sql LinqToSql-是否需要为每个SQL Server版本生成.dbml?

Linq to sql LinqToSql-是否需要为每个SQL Server版本生成.dbml?,linq-to-sql,Linq To Sql,我正在开发一个需要针对SQLServer2003、2005和2008进行操作的应用程序。我想从使用T-SQL存储过程过渡到使用Linq,因为我们目前没有数据库程序员,因此进行任何修复或添加任何功能都是一个缓慢而困难的过程。相比之下,在其他项目中使用LinqToSql是轻而易举的事 假设表结构相同,那么针对SQLServer 2008生成的.dbml文件在针对以前版本的SQLServer使用时是否有效? 由于我们已经必须支持三种稍有不同的数据库模式,因此必须为每个SQL版本生成DataContex

我正在开发一个需要针对SQLServer2003、2005和2008进行操作的应用程序。我想从使用T-SQL存储过程过渡到使用Linq,因为我们目前没有数据库程序员,因此进行任何修复或添加任何功能都是一个缓慢而困难的过程。相比之下,在其他项目中使用LinqToSql是轻而易举的事

假设表结构相同,那么针对SQLServer 2008生成的.dbml文件在针对以前版本的SQLServer使用时是否有效?


由于我们已经必须支持三种稍有不同的数据库模式,因此必须为每个SQL版本生成DataContext,以及我们额外的数据层功能,这将是一个障碍。

SQL Server 2005,2008:没有问题

SQL Server 2000,2003:服务器端分页(.Skip(),.Take())有问题,但除此之外,没有问题

我在SQLServer2005上开发,并在SQLServer2008上托管实时系统,没有任何问题

如果您曾经使用过它,那么在SQL Server 2005和LINQ to SQL的.Skip()实现之前,您将遇到任何问题,因为LINQ to SQL会将其转换为T-SQL中的行数,而这只是SQL Server 2005及以后版本的一部分


请参阅此相关问题:

是什么让您无法尝试?我们无法访问那些较旧版本的SQL Server,但我们无法强制客户升级。