Pregunta

Estoy intentando crear un registro de diagnóstico para mi aplicación que mostrará el número de versión más reciente de un ensamblaje instalado en el GAC.Por ejemplo, hay dos versiones del mismo ensamblaje en el GAC:foo.dll versión 1.0.0.0 y foo.dll versión 2.0.0.0.Necesito una función como la siguiente:

GetLatestGacVersion("foo.dll");  // returns "2.0.0.0"

¿Alguien sabe la mejor manera de hacer esto?

¡Gracias!

¿Fue útil?

Solución

Lo más fácil es:

Assembly a = Assembly.LoadWithPartialName ("foo.dll");
return a.GetName ().Version

que le proporcionará automáticamente la última versión del ensamblaje del GAC.

Tenga en cuenta que el método está en desuso por buenas razones.Solicitar una versión no específica al GAC posiblemente cause muchos problemas.

Sin saber realmente lo que quieres hacer, es difícil dar más consejos, pero en general, si estás buscando una versión específica, deberías buscarla en lugar de simplemente cargar "algo".

Otros consejos

El uso de un lograron envoltura alrededor de la Fusion API (fusion.dll) se podría enumerar los conjuntos en la GAC, filtro de ellos por su nombre y el orden de versión.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top