Exibindo informações de versão em um serviço web
-
08-06-2019 - |
Pergunta
Alguém pode sugerir uma maneira de obter informações de versão em um serviço Web?(VB.NET)
Gostaria de usar dinamicamente a versão assembly no título ou na descrição, mas os atributos exigem constantes.
Escrever manualmente as informações da versão como uma string é a única maneira de exibir as informações na página .asmx?
Solução
Sim, os atributos não podem conter nada além de constantes, então você não pode usar a reflexão para obter o número da versão.A classe WebServiceAttribute também é selada, portanto você não pode herdá-la e fazer o que quiser a partir daí.
Uma solução pode ser usar algum tipo de texto de espaço reservado como Nome e configurar uma tarefa do MsBuild para substituí-lo pelo número da versão ao criar o projeto.
Outras dicas
Você precisa escolher um tipo em sua montagem e fazer o seguinte:
typeof(Some.Object.In.My.Assembly).Assembly.GetName().Version;
via reflexão você pode obter o objeto Assembly que contém a versão do assembly.