J'ai une autre post qui a abouti à cetteSQL Server Search, comment retourner le nombre total de lignes?
SELECT DISTINCT
a.ArticleID,
COUNT(*) AS KeywordMatch,
a.Headline,
a.ShortDescription,
a.CategoryID,
a.ArticleSectionImage,
a.DatePublished
FROM
Article a
JOIN SearchWords sw ON a.ArticleID = sw.ArticleID
WHERE
EXISTS
(
SELECT
1
FROM
iter_charlist_to_tbl(@temp, ' ') s
WHERE
s.nstr = sw.SearchWord
)
AND
a.ArticleState = 3
GROUP BY
a.ArticleID, a.Headline, a.ShortDescription, a.CategoryID, a.ArticleSectionImage, a.DatePublished
ORDER BY (KeywordMatch) DESC, (a.DatePublished) DESC
Je me sers de ce long avec LINQ to SQL pour créer la pagination pour les utilisateurs. Le problème est que j'ai besoin de savoir combien d'enregistrements ma recherche a renvoyé (nombre total de lignes), pour afficher les flèches correctes pour l'utilisateur.
Ceci est mon Linq-to-SQL Query:
int iPageNum = pageNumber;
int iPageSize = (int)pageSize;
results = data.SearchArticles(searchString).Skip((iPageNum - 1) * iPageSize).Take(iPageSize).ToList();
Toutes les idées?
Mon Linq-to-SQL extrait-t-il tous les enregistrements de la base de données? ou crée-t-il une requête qui ne sélectionne que les enregistrements dont j'ai besoin? Comment puis-je pointer à la requête?
Quel type de client écrivez-vous? Il y a une chance raisonnable qu'il y ait un composant de pagination déjà écrit que vous pouvez simplement utiliser. –
J'ajoute la fonction de recherche à notre nouveau site "journal", petit. Donc je fais tout moi-même. – Patrick