ServiceStack V4 API文档缺少响应类型(在列表中)

本文关键字:列表 类型 响应 API V4 文档 ServiceStack | 更新日期: 2023-09-27 18:24:39

我们正在尝试从Swagger转换为使用SSV4的本地元数据功能。但在这样做的过程中,出现了api生成的问题:

问题似乎出现在内部SS操作BaseMetadataHandler.GetMetadataTypesForOperation(…)中,该操作似乎没有检测到列表中的复杂类型(并将它们与操作关联)。例如,此请求/响应dto不会显示"ComplexType"的文档:

[Route("/example", "GET")]  
    [DataContract]  
    public class Example : IReturn<Example Response>  
    {  
        [ApiMember(IsRequired = true)]  
        [DataMember(Order = 1, IsRequired = true)]  
        public Guid ExampleGuid { get; set; }  
    }  
    [DataContract]  
    public class ExampleResponse : IHasResponseStatus  
    {  
        [DataMember(Order = 1, IsRequired = false)]
        public List<ComplexType> Results{ get; set; }
        [DataMember(Order = 2, IsRequired = false)]
        public ResponseStatus ResponseStatus { get; set; }
    }

如果"ComplexType"是单数(不在列表中),则在元数据页面中会正确记录该类型。我是否错误地配置了这些DTO?或者元数据引擎?

提前感谢。。。Jordan

ServiceStack V4 API文档缺少响应类型(在列表中)

我已经扩展了ServiceStack的元数据页面,以便在此提交中包括Generic和Array集合中的引用类型。

此更改可从ServiceStackv4.0.32+获得,该版本现在可在MyGet上获得。