【发布时间】:2014-09-27 08:02:12
【问题描述】:
我们正在尝试从 Swagger 转换为使用 SSV4 的原生元数据功能。但是在这样做的过程中,api生成出现了问题:
问题似乎出在内部 SS 操作 BaseMetadataHandler .GetMetadataTypesForOperation(...) 中,它似乎没有检测到 List 中的复杂类型(并将它们与操作相关联)。例如,此请求/响应 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?或者元数据引擎?
提前谢谢...乔丹
【问题讨论】:
标签: c# servicestack