A documentação para habilitar a integração de XmlDoc em seus projetos de API da Web parece lidar apenas com situações em que todos os seus tipos de API fazem parte de seu projeto de WebApi. Em particular, ele discute como redirecionar a documentação XML App_Data/XmlDocument.xml
e descomentar uma linha em sua configuração que consumirá esse arquivo. Isso implicitamente permite apenas o arquivo de documentação de um projeto.
No entanto, em minha configuração, tenho meus tipos de solicitação e resposta definidos em um projeto comum de "Modelos". Isso significa que se eu tiver um endpoint definido como:
[Route("auth/openid/login")]
public async Task<AuthenticationResponse> Login(OpenIdLoginRequest request) { ... }
Onde OpenIdLoginRequest
é definido em um projeto C # separado como:
public class OpenIdLoginRequest
{
/// <summary>
/// Represents the OpenId provider that authenticated the user. (i.e. Facebook, Google, etc.)
/// </summary>
[Required]
public string Provider { get; set; }
...
}
Apesar dos comentários do documento XML, as propriedades do request
parâmetro não contêm documentação quando você visualiza a página de ajuda específica do terminal (isto é http://localhost/Help/Api/POST-auth-openid-login
).
Como posso fazer com que os tipos de subprojetos com documentação XML apareçam na documentação XML da API da Web?
fonte
var files...
linha porvar files = Directory.GetFiles(documentPath, "*.xml");
se você (como eu) nem sempre souber os nomes / número de arquivos de documentação xml que estarão lá. Também pode fazer mais filtragem conforme necessário.Também encontrei isso, mas não queria editar ou duplicar nenhum código gerado para evitar problemas mais tarde.
Com base nas outras respostas, aqui está um provedor de documentação independente para várias fontes XML. Basta colocar isso em seu projeto:
... e habilite-o
HelpPageConfig
com os caminhos para os documentos XML que você deseja:fonte
Outra maneira simplificada de fazer isso é mesclar os arquivos xml. Código de exemplo na minha resposta abaixo:
Comentários XML da página de ajuda da API da Web de mais de 1 arquivo
fonte
aqui eu forneço um link de resposta com ele, que pode ajudá-lo. Você pode facilmente usar vários arquivos XML para documentação.
Comentários XML da página de ajuda da API da Web de mais de 1 arquivo
fonte
A maneira mais fácil de corrigir esse problema é criando a pasta App_Code no servidor que você implantou. Em seguida, copie o XmlDocument.xml que você tem em sua pasta bin localmente para a pasta App_Code
fonte