Asp.net mvc 4 WebApi帮助页HttpResponseMessage SetActualResponseType

Asp.net mvc 4 WebApi帮助页HttpResponseMessage SetActualResponseType,asp.net-mvc-4,asp.net-web-api,Asp.net Mvc 4,Asp.net Web Api,我正在MVC4项目中使用WebApi帮助页面 根据下面的链接,我一直在设置HelpPageConfig以设置实际的响应类型 我有一个控制器,上面有两个get方法 /// <summary> /// Get the list of plans for a specified portfolio /// </summary> /// <param name="portfolioIdentifier">Portfolio Identifier (guid)</

我正在MVC4项目中使用WebApi帮助页面

根据下面的链接,我一直在设置HelpPageConfig以设置实际的响应类型

我有一个控制器,上面有两个get方法

/// <summary>
/// Get the list of plans for a specified portfolio
/// </summary>
/// <param name="portfolioIdentifier">Portfolio Identifier (guid)</param>
/// <returns>
/// Returns a list of <see cref="RestDTOs.Plan"/> Plan objects
/// </returns>
    public HttpResponseMessage Get(Guid portfolioIdentifier)
    {
    }

/// <summary>
/// Get full plan details.
/// </summary>
/// <param name="planIdentifier">Plan Identifier (guid)</param>
/// <returns>
/// Returns the <see cref="RestDTOs.Plan"/> Plan object
/// </returns>
[HttpGet]
    public HttpResponseMessage Detail(Guid planIdentifier)
    {
    }
这在Get方法上非常有效,但在Detail方法上没有产生任何结果


我需要向HelpPageConfig添加哪些内容,以便web api帮助为Detail方法拾取并生成示例

请尝试config.setActualResponseTypeOfPlan,Plan,Detail;。。。这里的第二个参数需要一个动作名称…我看到您正在使用Web API 1,仅供参考…在Web API 2中,有一个名为ResponseType的属性,您可以使用它来修饰动作,以描述给定动作的实际响应类型。

MVC 5有一个内置属性来设置响应类型

更多信息请点击此处:

只需使用:

    ResponseType(typeof([Your_Class]))]

谢谢你。我误解了actionName参数。虽然您只指定了http谓词,而实际的方法名MVC5没有内置属性来设置响应类型,但请检查下面的答案。
    ResponseType(typeof([Your_Class]))]