如何指示无法找到资源,仍然可以获取Web API 2 Web应用程序的自动生成文档?
以此方法定义为例:
<property name="packagesToScan" value="DAO" />
如果我使用此定义,则无法返回 public JsonResult<CalculatorDescription> GetParameterInfo(string parameterCaption)
,但如果我将返回类型更改为NotFound()
(为了能够返回IHttpActionResult
),我不会获得自动 - 返回类型的生成信息。
编辑: 请注意,我正在使用https://msdn.microsoft.com/en-us/library/dn337124(v=vs.118).aspx JsonResult和不 MVC(https://msdn.microsoft.com/en-us/library/system.web.mvc.jsonresult(v=vs.118).aspx)
答案 0 :(得分:4)
将您的退货类型更改为IHttpActionResult
,并使用ResponseType
attribute修饰您的操作方法:
当声明的返回类型为HttpResponseMessage或IHttpActionResult时,使用此选项指定操作返回的实体类型。生成ApiDescription时,ApiExplorer将读取ResponseType。
然后,在您的方法中,返回NotFound()
或JsonResult<T>
。
[ResponseType(typeof(CalculatorDescription))]
public IHttpActionResult GetParameterInfo(string parameterCaption)
{
...
if (...)
return new JsonResult<CalculatorDescription>(...);
else
return NotFound();
}