Определить версию Silverlight, необходимую для сборки - PullRequest
2 голосов
/ 07 декабря 2009

Как узнать, достаточно ли Silverlight 2 для сборки или требуется Silverlight 3?
У меня есть вся информация, которая доступна через рефлексию (Mono.Cecil).

Тот же вопрос для SL 3 против 4.

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 08 февраля 2010

Это может быть именно то, что вы ищете:

Assembly asm = Assembly.GetExecutingAssembly(); 
string[] parts = asm.FullName.Split(',');
string version = parts[1];

http://forums.silverlight.net/forums/p/23321/82774.aspx#82774

4 обратно совместимо с 3, 3 обратно совместимо с 2.

Вы должны знать, в какую версию silverlight встроено приложение.

Установка и обнаружение:

Этот файл содержит файл Javascript, который определяет, установлен ли SL, и какую версию: http://blog.mdk -photo.com / запись / обнаруживая-Silverlight-версия-installed.aspx

http://www.apijunkie.com/APIJunkie/blog/post/2009/04/How-to-programmatically-detect-Silverlight-version.aspx

Определение версии с помощью Silverlight

http://www.scribd.com/doc/14938624/Creating-a-Custom-Silverlight-Installation-Experience

http://blogs.msdn.com/tims/archive/2007/10/29/optimizing-the-silverlight-install-experience.aspx

Thge GAC также уведомит вас во время компиляции, если вы используете неправильную версию SL. Обычно, когда у вас установлены инструменты Silverlight и вы пытаетесь скомпилировать приложение. Например, ваша сборка создана в версии 3, и вы используете элемент управления, который доступен только в версии 3, вам нужно будет установить инструменты SL 3, иначе сборка выдаст сообщение об ошибке.

Подробнее о сборках Silverlight:

http://www.netfxharmonics.com/2008/12/Reusing-NET-Assemblies-in-Silverlight

http://nerddawg.members.winisp.net/AssemblySniffer/

1 голос
/ 09 декабря 2009

Вы не можете определить только из библиотеки классов и ее метаданных - это можно надежно определить только из встроенного файла манифеста приложения Silverlight в .Xap.

...