Я хочу показать номер версии Silverlight 3 своего приложения в о поле, но когда я использую традиционный вызов .NET как:
Assembly.GetExecutingAssembly().GetName().Version;
Я получаю MethodAccessException на GetName () вызов. Как я, как предполагается, получаю номер версии своего блока?
private static Version ParseVersionNumber(Assembly assembly)
{
AssemblyName assemblyName = new AssemblyName(assembly.FullName);
return assemblyName.Version;
}
или это:
Assembly assembly = Assembly.GetExecutingAssembly();
String version = assembly.FullName.Split(',')[1];
String fullversion = version.Split('=')[1];
От: http://betaforums.silverlight.net/forums/p/128861/288595.aspx
сообщение об этом:
http://forums.silverlight.net/forums/p/93400/214554.aspx
Вы можете посмотреть на js файл, который я опубликовал здесь: Обнаруживают версию Silverlight, требуемую собранием
, Ваша ошибка - expected.as, это secutiry очень важный, выше некоторая работа arounds.
GetName
помечено как критическое для безопасности, поэтому вы получаете исключение, когда пытаетесь вызвать его.
Вам нужно будет использовать свойство FullName
и проанализировать часть строки Version = x.x.x.x
.