У меня есть страница поиска, которая возвращает мои результаты по нескольким страницам. Это работает очень хорошо. Вот код:Webmatrix - изменение переменных винтов с результатами поиска
//Paging Variables
var pageSize = 6;
var totalPages = 0;
var count = 0;
var page = UrlData[0].IsInt() ? UrlData[0].AsInt() : 1;
var offset = (page -1) * pageSize;
string selectQueryString = "SELECT * FROM Property_Info";
queryResults = db.Query(selectQueryString);
count = queryResults.Count();
totalPages = count/pageSize;
if(count % pageSize > 0){
totalPages += 1;
}
selectQueryString += "OFFSET @0 ROWS FETCH NEXT @1 ROWS ONLY;";
queryResults = db.Query(selectQueryString, offset, pageSize);
Проблема у меня есть, это то, что я хочу, чтобы дать пользователям возможность изменять сколько свойства показаны на каждой странице. Для этого я устанавливаю переменную «pageSize» равной 0, которая изменяется в зависимости от строки запроса.
Проблема в том, что пейджинг перестает работать. Когда я перехожу на вторую страницу, это показывает мне те же результаты, что и первая страница?
Вот код строки запроса:
//Set page size
if (Request.QueryString["pagesize"].AsInt() == 2)
{
pageSize = 2;
}
else
{
pageSize = 4;
}
Любые идеи, ребята?
просто мысль, выборка/смещение даже лучший метод для этого, так как я использую SQL Express? Я только что прочитал, что это в основном используется для SQL compact? – Gavin5511
'OFFSET' и' FETCH' поддерживаются SQL Express начиная с версии 2012. – GmG
Отлично, спасибо за информацию. Я не ближе к решению моей проблемы, но хорошо знать, что я не использую неправильный код полностью! – Gavin5511