복잡한 개체의 정의를 나열하기 위해 Swagger-UI 용 C#에서 주석을 사용하는 적절한 방법은 무엇입니까? 나는 그런 식으로 사용하는 경우C# ServiceStack 특성 및 Swagger UI - 복잡한 개체 목록
[ApiMember(Name = "Foo", Description = "Some description",
DataType = "List<Foo>", IsRequired = true)]
public List<Foo> Foo {get; set;}
그래서, 자신감-UI 이것이 List
하지만 Foo
에 연결하거나 아무것도하지 않는 것이 문서에 표시 만합니다 : 우리는이 같은이있는 경우 예를 들어
, .
즉, model \ schema에 제대로 표시되었지만 필드 정의에 나열되지 않은 경우 작동하는 방식 또는 목록에서 예상되는 정확한 데이터 구조를 가리 키도록 변경할 수 있습니다. 정렬?
편집 다음은 전체 DTO 샘플입니다 :
[Route("/warranties", "POST", Summary = "POST New Warrantty", Notes = "Create new warranty into our system")]
public class CreateWarrantyRequest : IReturn<ApiResponse>
{
[ApiMember(Name = "CoverageId", Description = "Coverage Id", DataType = "int", IsRequired = true)]
public string CoverageId { get; set; }
[ApiMember(Name = "WarrantyProducts", Description = "Warranty Products", DataType = "List<WarrantyProduct>", IsRequired = true)]
public List<WarrantyProduct> WarrantyProducts { get; set; }
}
public class WarrantyProduct
{
[ApiMember(Name = "Manufacturer", Description = "Manufacturer Name", DataType = "string", IsRequired = true)]
public string Manufacturer { get; set; }
[ApiMember(Name = "ProductType ", Description = "Product Type", DataType = "ProductType", IsRequired = true)]
public ProductType ProductType { get; set; }
[ApiMember(Name = "SerialNumber", Description = "Serial Number", DataType = "string", IsRequired = true)]
public string SerialNumber { get; set; }
[ApiMember(Name = "PurchasePrice", Description = "Purchase Price", DataType = "decimal", IsRequired = true)]
public decimal PurchasePrice { get; set; }
}
그리고 이것은 SwaggerFeature으로 모습입니다 :
을 그리고 이것은 OpenApiFeature으로 모습입니다 :
어떻게 SwaggerFeature를 사용할 때 요청 용 모델 스키마가 있는데 OpenApiFeature를 사용할 때 표시되지 않으며 OpenApiFeature를 사용할 때 데이터 유형에 대해 "정의되지 않음"을 표시합니다. 이것에 대한 C# 예제를 보여줄 수 있습니까? – ShP
@ShP 두 가지 버전의 Swagger UI를 사용하여 소비되는 두 가지 사양입니다. 마찬가지로 속성을 사용하여 복합 유형을 정의 할 방법이 없다고 말했지만 ServiceStack은 Open API 사양에 따라 적절한 복합 유형 정의를 이미 내 보냅니다. – mythz
조금 혼란 스러워요. SS가 이미 적절한 복합 유형을 내 보냈지 만 내 객체의 OpenApi에서 "undefined"라고 말하면 모델 스키마에도 나열되어 있지 않습니다. – ShP