Obtener la versión en tiempo de ejecución de un ensamblaje Silverlight
Quiero mostrar el número de versión de mi aplicación Silverlight 3 en el cuadro acerca de, pero cuando uso una llamada. Net tradicional como:
Assembly.GetExecutingAssembly().GetName().Version;
Obtengo un MethodAccessException en la llamada getName (). ¿Cómo se supone que voy a obtener el número de versión de mi ensamblaje?
3 answers
private static Version ParseVersionNumber(Assembly assembly)
{
AssemblyName assemblyName = new AssemblyName(assembly.FullName);
return assemblyName.Version;
}
O esto:
Assembly assembly = Assembly.GetExecutingAssembly();
String version = assembly.FullName.Split(',')[1];
String fullversion = version.Split('=')[1];
De: http://betaforums.silverlight.net/forums/p/128861/288595.aspx
Un post sobre esto:
Http://forums.silverlight.net/forums/p/93400/214554.aspx
Puede ver el archivo js que publiqué aquí: Detectar la versión de Silverlight requerida por un ensamblaje
Su error es expected.as es fundamental la seguridad, arriba hay algunas soluciones.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:09:13
GetName
está marcado como Crítico de seguridad y, por lo tanto, obtiene una excepción cuando intenta llamarlo.
Necesitará usar la propiedad FullName
y analizar la parte Version=x.x.x.x
de la cadena.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-02-19 15:15:08
Puede usar
Assembly.GetExecutingAssembly()
.GetCustomAttributes(false).OfType<AssemblyVersionAttribute>()
.Single().Version;
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-04-23 20:24:47