【问题标题】:How do I document an optional QueryString parameter in ASP.NET WebApi Help Pages?如何在 ASP.NET Web Api 帮助页面中记录可选的查询字符串参数?
【发布时间】:2013-07-16 21:53:35
【问题描述】:

ASP.Net Web Api 帮助页面似乎会自动确定参数是否在请求 Uri 或正文中。如何记录作为 QueryString 参数的选项参数?

例如,我可能有一个 RESTful Url,例如

[GET] api/Books?relatedToBookId=xx

其中“relatedToBookId”是可选的 queryString 参数。

通常将 FromUri 或 FromBody 的参数放入 cmets 中

<param name="variableName">blah blah</param>

【问题讨论】:

    标签: asp.net-mvc asp.net-web-api asp.net-web-api-helppages


    【解决方案1】:

    您可以执行以下操作,您的可选查询字符串参数信息将显示在帮助页面中。

    在下面的代码中,relatedToBookId 是一个来自查询字符串的可选参数。

        /// <summary>
        /// Gets list of books
        /// </summary>
        /// <param name="relatedToBookId">Your description here</param>
        /// <returns>returns list of books</returns>
        public IEnumerable<Book> GetBooks(int? relatedToBookId = null)
    

    另外,如果您想提及此参数是可选的,您可以执行以下操作:

    • 转到已安装的文件(Areas/HelpPage/Views/Help/DisplayTemplates/Parameters.cshtml)

    • 将与case ApiParameterSource.FromUri 相关的条件更新为以下内容:

      case ApiParameterSource.FromUri: <p>Define this parameter in the request <b>URI</b>.</p> if(parameter.ParameterDescriptor.IsOptional) { <p>This parameter is <b>optional</b>.</p> } break;

    【讨论】:

    • 谢谢你,基兰!有没有办法有两个单独的帮助页面:例如一个用于“api/Books”,一个用于“api/Books?relatedToBookId=xx”?
    猜你喜欢
    • 2012-08-05
    • 2020-01-06
    • 2013-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-08
    • 2015-11-18
    相关资源
    最近更新 更多