Add `Skip()` and `Top()` to `QuickbaseQueryBuilder`
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 88/100
Hướng nghiên cứu
Đọc QuickbaseNet/Helpers/QuickbaseQueryBuilder.cs, QuickbaseNet/Models/Options.cs và QuickbaseNet/Requests/QuickbaseQueryRequest.cs, sau đó xem các bài kiểm thử hiện có của trình tạo truy vấn. Triển khai các phương thức trình tạo được yêu cầu và hành vi tuần tự hóa tùy chọn, giữ Options là null nếu không gọi phương thức nào trong hai phương thức. Chạy dotnet test --filter FullyQualifiedName~QuickbaseQueryBuilderTests và xác nhận ba điều kiện hoàn tất được liệt kê.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
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
- Ngôn ngữ chính
- C#
- Star
- 3
- Fork
- 2
- Merge trung bình
- 3 giờ 14 phút
- Pull request đã merge (30 ngày)
- 2
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của hazeliscoding/quickbase-net
-
good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
-
good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
-
Update the package metadata that still points at ducksoopCó thể đã có người làm @hazeliscoding đã nhận 6 ngày trước. Đang mở
hazeliscoding/quickbase-net#15 · 1 người được giao ·
Tất cả issue của hazeliscoding/quickbase-net
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
unoplatform/uno.check#591 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
weaviate/csharp-client#378 ·
-
agentic-workflows automated testing
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
Azure-Samples/Legacy-Modernization-Agents#194 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area-encryption area-security p1-recommended technical-debt
Độ khó 2/5 Dưới một giờ Mức phù hợp với người mới 85/100
Maintainer thường phản hồi trong vòng 1 ngày
-
V5: `asAllDay` parameter not working in `/feed/v5/calendar/sonarr.ics`Có thể đã có người làm @stevietv đã nhận hôm nay. Đang mởneeds-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
Maintainer thường phản hồi trong vòng 1 ngày