Add `Skip()` and `Top()` to `QuickbaseQueryBuilder`
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 88/100
Piste de recherche
Lisez QuickbaseNet/Helpers/QuickbaseQueryBuilder.cs, QuickbaseNet/Models/Options.cs et QuickbaseNet/Requests/QuickbaseQueryRequest.cs, puis examinez les tests existants du générateur de requêtes. Implémentez les méthodes demandées du générateur et le comportement de sérialisation des options, en laissant Options à null si aucune des deux méthodes n’est appelée. Exécutez dotnet test --filter FullyQualifiedName~QuickbaseQueryBuilderTests et confirmez les trois critères d’achèvement indiqués.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
The query endpoint takes skip and top options for paging. QuickbaseQueryRequest already has an Options property for them, but QuickbaseQueryBuilder never sets it. This is the paging item in ROADMAP.md.
What to do
- Add
Skip(int count)andTop(int count)toQuickbaseQueryBuilder. Each returns the builder, like the other methods. - In
Build(), setOptionsonly when one of them was called. Otherwise leave it null, as it is today. - In
Options, addDefaultValueHandling = DefaultValueHandling.Ignoreto theskipandtopproperties, so calling onlySkip(100)doesn't also send"top": 0. - Add XML doc comments to both methods.
QueryAllRecords is a separate roadmap item. Leave it out.
Where to look
QuickbaseNet/Helpers/QuickbaseQueryBuilder.cs(Build()is at line 86)QuickbaseNet/Models/Options.csQuickbaseNet/Requests/QuickbaseQueryRequest.cs, line 46
Done when
-
.Skip(100).Top(50)builds a request withOptions.Skip100 andOptions.Top50 - A request built without either has
Options == null -
JsonConvert.SerializeObjectof a request built with only.Skip(100)contains"skip":100and no"top"key - Tests for all three in
QuickbaseNet.UnitTests/Tests/QuickbaseQueryBuilderTests.cs(create it if it doesn't exist)
Testing it
dotnet test --filter FullyQualifiedName~QuickbaseQueryBuilderTests
- Langage dominant
- C#
- Étoiles
- 3
- Forks
- 2
- Merge moyen
- 3 h 14 min
- PR mergées (30 j)
- 2
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de hazeliscoding/quickbase-net
-
good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
-
good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
-
Update the package metadata that still points at ducksoopPeut-être pris @hazeliscoding l’a pris il y a 3 jours. Ouverte
hazeliscoding/quickbase-net#15 · 1 personne assignée ·
Toutes les issues de hazeliscoding/quickbase-net
Issues similaires
-
bug mcp misleading small
Difficulté 2/5 1-3 heures Accessibilité débutants 77/100
Les mainteneurs répondent en général sous 1 jour
-
accessibility help wanted macos
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
dorlugasigal/annotator#42 ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
AvaloniaUI/Avalonia#22568 ·
Les mainteneurs répondent en général sous 2 jours
-
[bug] 截图失败日志冲爆硬盘Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 63/100
babalae/better-genshin-impact#3846 · 2 commentaires ·
Les mainteneurs répondent en général sous 2 jours
-
[辞書] ブルアカ->ブルーアーカイブOuverte要トリアージ 辞書
Difficulté 1/5 Moins d'une heure Accessibilité débutants 68/100
Les mainteneurs répondent en général sous 1 jour