Incluya la ruta de TFS en el ensamblado de .NET

Cuando solucionamos problemas en nuestras aplicaciones, en muchas situaciones no puedo estar seguro de qué twig provienen originalmente los ensamblajes, debido a un ciclo de lanzamiento imperfecto y un error humano.

(Tenemos muchas diferentes correcciones de errores / funciones / testings / versiones, etc. en nuestro TFS).

Los files PDB pueden ayudar a veces, al less en un entorno de testing, pero a veces faltan o están desactualizados / pertenecen a ensamblajes de otra twig.

Entonces, estaba tratando de pensar en una manera de include directamente la información de la twig fuente dentro del ensamblaje.

Sorprendentemente, no pude encontrar fácilmente un path sencillo en línea para lograr esto.

Mi respuesta a continuación explica mi enfoque. Me gustaría recibir comentarios o soluciones alternativas.

En resumen: Creé un atributo personalizado que puse en AssemblyInfo.cs . Dentro del constructor del atributo, la ruta del server para el ensamblaje actual se consulta desde TFS y se comstack en ella.

Básicamente es una combinación de lo siguiente:

¿Puedo agregar cadenas de versión personalizadas a una DLL .net?

¿Cómo obtengo la ruta del ensamblado en el que se encuentra el código?

Obtener la carpeta asignada TFS de una subcarpeta local de la solución?

(Nota: No puedo publicar el código fuente real debido a las restricciones de la empresa, pero creo que es bastante sencillo).

Para get el valor del atributo más tarde, lamentablemente no es tan fácil como get el número de versión de las properties del file DLL, pero al less ahora es posible get la información que necesito con el mínimo esfuerzo. (Utilizo un pequeño script de PowerShell para eso).