API da Web do ASP.NET Gerar todos os parâmetros do modelo - páginas de ajuda
Estou ocupado criando uma API da Web (dentro de um aplicativo asp mvc4). Estou usando a biblioteca sugerida no site asp.net para gerar documentação (http://www.asp.net/web-api/overview/creating-web-apis/creating-api-help-pages).
Meu problema é que, se meu parâmetro for um modelo, não será possível especificar quais propriedades o modelo contém nas páginas de ajuda geradas.
Aqui está um exemplo:
MODELO:
public class TestModel
{
property String FirstName {get;set;}
property String Surname {get; set;}
property Boolean Active {get;set;}
}
AÇAO:
/// <summary>
/// This is a test action
/// </summary>
/// <param name="model">this is the model</param> <-- this works
/// <param name="FirstName">This is the first name </param> <-- doesn't work
/// <param name ="model.Surname">This is the surname</param> <-- doesn't work
public HttpResponseMessage Post(my.namespace.models.TestModel model)
{
...
}
Apenas o parâmetro para o modelo é gerado.
Eu dei uma olhada no documento xml que é gerado para a documentação e adiciona os outros parâmetros.
<member name="my.namespace.api.Post(my.namespace.models.TestModel)">
<summary>
this is a test action
</summary>
<param name="model>this is the model</param>
<param name="FirstName">This is the first name </param>
<param name="model.Surname">This is the surname</param>
</member>
Mas nas páginas de ajuda, ele gera apenas o modelo de parâmetro.
Eu tracei para o método onde ele obtém os parâmetros do xml.
Collection<ApiDescription> apiDescriptions = config.Services.GetApiExplorer().ApiDescriptions;
Isso está localizado no HelpPageConfigurationExtentions.cs que é gerado automaticamente.
Estou me aproximando disso da maneira errada? Alguém sabe de uma solução alternativa?
Qualquer sugestão ou solução será apreciada.