Имеет ли значение для проектов Silverlight, какую версию .NET Framework я выберу в диалоговом окне «Новый проект»?

Насколько мне известно, приложения Silverlight работают не в среде CLR .NET Framework, а в ее независимой, подмножественной версии, называемой Core CLR. Я также знаю, что могу изменить версию Silverlight в окне Свойства проекта:

Окно

Тем не менее, когда я создаю проект приложения Silverlight через диалоговое окно Новый проект, я могу выбрать версию .NET Framework:

Диалоговое окно

Влияет ли этот выбор версии .NET Framework на проекты Silverlight или этот параметр игнорируется?


person stakx - no longer contributing    schedule 05.11.2014    source источник


Ответы (1)


Краткий ответ. Параметр версии .NET Framework не оказывает немедленного влияния на созданный проект Silverlight, но влияет на (необязательный) проект веб-приложения ASP.NET, в котором будет размещено приложение Silverlight.

Более длинный ответ:

При создании проекта приложения Silverlight Visual Studio спросит вас, хотите ли вы также создать проект веб-приложения ASP.NET для размещения вашего приложения Silverlight:

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

Если вы решите создать такой проект, он будет нацелен на версию .NET Framework, выбранную в предыдущем диалоговом окне Новый проект.

Чтобы проверить, действительно ли вариант версии .NET Framework не влияет на сам проект Silverlight, я создал два проекта приложений Silverlight, один с выбранной .NET Framework 4, а другой - с .NET Framework версии 4.5.1. Затем я сравнил два сгенерированных файла проекта .csproj. Ни в одном из файлов проекта не упоминается какая-либо версия .NET Framework, вместо этого:

<TargetFrameworkIdentifier>Silverlight</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<SilverlightVersion>$(TargetFrameworkVersion)</SilverlightVersion>
person stakx - no longer contributing    schedule 05.11.2014