7

ServiceStack を使用して、swagger で正しいメモを表示する際に問題が発生しています。

この構造を考えると:

    [Route("/Widget/{WidgetId}", Summary = "Updates a widget by id", Verbs = "POST",
    Notes = "Updates a widget by id.")]
    public class UpdateReqWidget : IReturnVoid
    {
        [ApiMember(Name = "WidgetId", Description = "The id of widget to delete.")]
        public int WidgetId { get; set; }
    }

    public class WidgetService 
    {
        public void Put(UpdateReqWidget req)
        {
             //do code here
        }
    }

それは生産しています:Swagger UI エラー

パラメーター リストには WidgetId のみが含まれていると予想されますが、WidgetId と、リクエストのクラス名である UpdageReqWidget が表示されています。私が間違っていることは何ですか?

編集: ServiceStack と ServiceStack.API.Swagger の両方にバージョン 3.9.55 を使用しています。ニーズに合わせてテンプレートを変更しました。

4

1 に答える 1

6

ServiceStack.Api.Swaggerには、Swagger UI で要求本文パラメーターを自動的に生成する機能が最近追加されました。リクエスト DTO にパスまたはクエリ パラメータとして指定されていないプロパティがないエッジ ケースがあると思います。ここでのケースのように、コードは引き続きそのUpdateReqWidgetリクエスト ボディ パラメータを生成しますが、Swagger では空のオブジェクトになります。 .

于 2013-07-26T12:18:48.967 に答える