NHibernate 2.0.1下实现SQL2000真分页2011-08-29 博客园 unfeeling最近用NHibernate做个项目 由于数据库用的是mssql2000 NHibernate 对 mssql2000的分页查询支持的不是很好 于是自己动手实现一个mssql2000方言原 NHibernate.Dialect 命名空间下的mssql2000的方言类 MsSql2000Dialect 里的 GetLimitString 方法 如下: public override SqlString GetLimitString(SqlString querySqlString, int offset, int limit) { if (offset > 0) { throw new NotSupportedException("SQL Server does not support an offset"); }
/* * "SELECT TOP limit rest-of-sql-statement" */
return querySqlString.Insert (GetAfterSelectInsertPoint(querySqlString), " top " + limit.ToString ()); }