LINQ to SQL - 缺少可扩展性方法定义

时间:2009-08-08 06:25:34

标签: c# .net linq-to-sql

我只需要在SQL Server 2000数据库上使用LINQ to SQL,我注意到它不包含所有“可扩展性方法定义”操作,为什么会这样?

3 个答案:

答案 0 :(得分:1)

究竟缺少什么?你在看什么(或不是)?

特别是,基于连接和特定服务器,在运行时中选择LINQ-to-SQL的数据库策略(即如何在SQL2000和SQL2005上进行分页等)(所以它安装SQL Server 2008时自动更新。

代码生成完全基于dbml,它并不真正关心服务器版本(它只是xml - 看看)。

如果您缺少某些partial方法,我想知道您是否意外地将您的partial class es从dbml生成的方法中分离出来,可能是通过更改命名空间或其名称。

答案 1 :(得分:0)

根据Scott Guthrie

  

LINQ to SQL将支持SQL 2000。   需要SQL 2005的一个功能是   服务器端分页支持(其中   你只做了分页   数据库)。这使用SQL 2005   ROW_NUMBER()功能仅在   SQL 2005

答案 2 :(得分:0)

仅为具有主键(source)的表/实体生成可扩展性方法。

请注意,这也适用于SQL视图。

将实体放到Linq to SQL设计器上后,您可以在“属性”窗口中指定一列作为主键。重新生成designer.cs文件,现在将创建扩展性方法。