LINQ的任何部分我应该避免使用SQL 2000吗?

时间:2011-08-29 16:45:28

标签: linq linq-to-sql .net-4.0

我有一个SQL 2000后端。 SQL 2000不支持Entity Framework v2。我想使用LINQ来操作内存中的集合。

假设我没有使用Entity Framework v2,那么.NET 4中LINQ的任何部分是否都不能与SQL 2000一起使用? TableAdapters doing CRUD操作可以使用吗?

据我所知,使用Entity框架需要显式添加* .edmx文件。因此添加*.dmbl (linq to sql) or DataSet (*.xsd)不是问题。它是否正确?换句话说,LINQ的任何函数都会生成不兼容的代码,例如实体?

1 个答案:

答案 0 :(得分:4)

在linq2Sql和SQL 2000中使用SkipTake存在一些限制。

MSDN:

  

使用时必须使用身份成员(IsPrimaryKey)   获取或跳过SQL Server 2000数据库。该   查询必须针对单个表(即不是连接),或者是一个   区别,除外,相交或联盟操作,不得包括   一个Concat操作。有关更多信息,请参阅“SQL Server   2000支持“标准查询操作员翻译部分(LINQ to   SQL)。

     

此要求不适用于SQL Server 2005。

有关不支持的功能的更多信息,请参阅http://msdn.microsoft.com/en-us/library/bb399342.aspx上的“SQL Server 2000支持”部分