어떻게이Linil to SQL과 CEILING의 차이점은 무엇입니까?
SELECT CEILING(COUNT(*)/10) NumberOfPages
FROM MyTable
Linq에에 SQL로해야합니까?
어떻게이Linil to SQL과 CEILING의 차이점은 무엇입니까?
SELECT CEILING(COUNT(*)/10) NumberOfPages
FROM MyTable
Linq에에 SQL로해야합니까?
많은 .NET 방법이 같은 수학 클래스와 String 클래스의 대부분의 방법으로, SQL 서버 기능에 번역 된 IQueryable입니다
. 그러나 some caveats이 있습니다.
또한 SqlMethods class을보고 .NET에 해당하지 않는 추가 SQL Server 기능을 노출합니다.
그러나 귀하의 경우에 당신도 그 어떤 것도 필요하지 않습니다 :
int numberOfPages;
using (var db = new MyDBDataContext())
{
numberOfPages = (int)Math.Ceiling(db.Books.Count()/10.0);
}
SQL CEILING을 사용하지 않으면 LINQ 쿼리에서 .NET ceiling (Math.Ceiling)을 사용합니다.
나는 이것이 가능하지 않다고 생각합니다. 가능한 해결 방법은 전체 개수를 얻은 다음 .NET 코드에서 계산하는 것입니다. 다음과 같이 : 쿼리
var itemsPerPage = 10;
var currentPage = 0;
var totalResults = query.Count();
var myPagedResults = query.Skip(currentPage).Take(itemsPerPage);
var totalPages = (int)Math.Ceiling((double)totalResults/(double)pageSize);