microsoft / microsoft/OpenAPI.NET.OData

Set request body to optional when all properties are optional

Đang mở
#582 7 bình luận 0 reaction 0 người được giao Xem trên GitHub

Một pull request liên quan đã được merge.

  • #775 của @baywet — đã merge
priority:p1
Ngôn ngữ chính
C#
Star
240
Fork
70
Merge trung bình
7 giờ 59 phút
Pull request đã merge (30 ngày)
13

Mô tả

Related to https://github.com/microsoftgraph/msgraph-sdk-java/pull/2163 and https://github.com/microsoftgraph/msgraph-sdk-dotnet/pull/2671#discussion_r1765012196

In a scenario where all the properties in the request body are optional such as an odata action with all parameters being optional, we should set the requestBody.required = false in the generated openApi description otherwise explictly set it to true.

https://spec.openapis.org/oas/v3.0.3.html#fixed-fields-10

This will unlock the generation of request body parameters in the SDKs as optional parameters in the builders to prevent breaking changes in scenarios where optional parametes are added.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Bắt đầu bằng việc xem xét các pull request Microsoft Graph được liên kết và đặc tả các trường cố định của request-body trong OpenAPI 3.0.3. Truy vết nơi mô tả OpenAPI được tạo xác định requestBody.required; hoàn thành có nghĩa là tính tùy chọn được biểu diễn chính xác đối với các body có tất cả thuộc tính đều tùy chọn, trong khi các body bắt buộc vẫn được xác định rõ ràng là bắt buộc.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
csharp
Lĩnh vực
api
Loại issue
Tính năng
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.