我對ASP.NET Web API幫助頁面有疑問。ASP.NET Web API幫助頁面無法處理通用類型控制器
通常HelpPages可以生成由XMLDocumentation 示例代碼的WebAPI:
public class ValueControllerBase : ApiController
{
/// <summary>
/// Base Do
/// </summary>
public IEnumerable<string> Do()
{
return new string[] { "value1", "value2" };
}
}
public class ValuesController : ValueControllerBase
{
/// <summary>
/// Testing API
/// </summary>
public string Get(int id)
{
return "value";
}
}
這可以順利產生,就像這樣:
API
GET api/Values/Get/{id}
Description
Testing API
API
POST api/Values/Do
Description
Base Do
,但如果我使用一個通用的基礎控制器,它不會生成API文檔。
樣品:
public class ValueControllerBase<T> : ApiController
{
/// <summary>
/// Base Do
/// </summary>
public IEnumerable<string> Do()
{
return new string[] { "value1", "value2" };
}
}
public class ValuesController<String> : ValueControllerBase
{
/// <summary>
/// Testing API
/// </summary>
public string Get(int id)
{
return "value";
}
}
如果我在第二部分中使用代碼,HelpPages可以生成API文檔,但不會產生API註釋。我的兩個例子之間的區別只是第二節代碼使用泛型類型。
API
GET api/Values/Get/{id}
Description
Testing API
API
POST api/Values/Do
Description
null
在該方法Do()
,註釋不顯示與第一
相比是否有任何解決方案來解決這些問題?
另一方面,這打破了獲取具有可爲空參數的方法的文檔。 –
@MotlicekPetr我有這個實現,但我沒有看到它打破空可參數文檔。你有一個例子嗎? –