linq分页问题
使用linq 分页是的时候当到第二页的时候就报错。错误信息
System.Web.Services.Protocols.SoapException: 服务器无法处理请求。 --->
System.NotSupportedException: 此提供程序只支持对返回实体或投影(包含所有标识列)的有序查询使用 Skip(),这种查询为单表(非联接)查询,或者为 Distinct、Except、Intersect 或 Union (非 Concat)操作。
在 System.Data.Linq.SqlClient.SingleTableQueryVisitor.VisitSelect(SqlSelect select)
在 System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)
在 System.Data.Linq.SqlClient.SingleTableQueryVisitor.Visit(SqlNode node)
在 System.Data.Linq.SqlClient.SqlVisitor.VisitAlias(SqlAlias a)
在 System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)
在 System.Data.Linq.SqlClient.SingleTableQueryVisitor.VisitSelect(SqlSelect select)
在 System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)
在 System.Data.Linq.SqlClient.SingleTableQueryVisitor.Visit(SqlNode node)
在 System.Data.Linq.SqlClient.SqlVisitor.VisitAlias(SqlAlias a)
在 System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)
在 System.Data.Linq.SqlClient.SingleTableQueryVisitor.VisitSelect(SqlSelect select)
在 System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)
在 System.Data.Linq.SqlClient.SingleTableQueryVisitor.Visit(SqlNode node)
在 System.Data.Linq.SqlClient.SqlVisitor.VisitAlias(SqlAlias a)
在 System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)
在 System.Data.Linq.SqlClient.SingleTableQueryVisitor.VisitSelect(SqlSelect select)
在 System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)
在 System.Data.Linq.SqlClient.SingleTableQueryVisitor.Visit(SqlNode node)
在 System.Data.Linq.SqlClient.QueryConverter.GenerateSkipTake(SqlSelect sequence, SqlExpression skipExp, SqlExpression takeExp)
在 System.Data.Linq.SqlClient.QueryConverter.VisitTake(Expression sequence, Expression count)
在 System.Data.Linq.SqlClient.QueryConverter.VisitSequenceOperatorCall(MethodCallExpression mc)
在 System.Data.Linq.SqlClient.QueryConverter.VisitMethodCall(MethodCallExpression mc)
在 System.Data.Linq.SqlClient.QueryConverter.VisitInner(Expression node)
在 System.Data.Linq.SqlClient.QueryConverter.ConvertOuter(Expression node)
在 System.Data.Linq.SqlClient.SqlProvider.BuildQuery(Expression query, SqlNodeAnnotations annotations)
在 System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query)
在 System.Data.Linq.DataQuery`1.System.Collections.Generic.IEnumerable<T>.GetEnumerator()
在 System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
在 System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
在 kltz.zxzd.insfyf.dal.NEWS_REFER_VIEWDAL.getnewsbycontation(Int32 pagesize, Int32 pageindex, Int32& totalcount) 位置 \\192.168.1.92\d$\infsysAspNet\kltz.zxzd.insfyf.dal\NEWS_REFER_VIEWDAL.cs:行号 21
在 kltz.zxzd.insfyf.bll.NEWS_REFER_VIEWBLL.getnewsbycontation(Int32 pagesize, Int32 pageindex, Int32& totalcount) 位置 \\192.168.1.92\d$\infsysAspNet\kltz.zxzd.insfyf.bll\NEWS_REFER_VIEWBLL.cs:行号 17
在 Service.HelloWorld(Int32 pagesize, Int32 pageindex, Int32& totalcount)
--- 内部异常堆栈跟踪的结尾 ---
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
我的源码: infsysdb.NEWS_REFER_VIEW.Where(p => p.SmallClassName == "政策内线").OrderByDescending(p => p.NewsID).Skip((pageindex - 1) * pagesize).Take(pagesize).ToList();
数据库使用的是sqlserver 2000 但是我在infsysDB.designer.cs 文件中将视图中做了主键设置
public partial class NEWS_PRESS_VIEW
{
private System.Nullable<System.Guid> _GUID;
private int _NEWSID;
private string _BIGCLASSNAME;
private string _SMALLCLASSNAME;
private string _TITLE;
private string _CORP;
private string _AUTHOR;