对于Silverlight项目,我在“新建项目”对话框中选择的.NET Framework版本是否重要?

时间:2014-11-05 22:02:04

标签: visual-studio silverlight .net-framework-version new-project

据我所知,Silverlight应用程序不能在.NET Framework的CLR上运行,而是在其独立的子集版本上运行,称为Core CLR。我也知道我可以在项目属性窗口中更改Silverlight版本:

Project Properties window with the "Target Silverlight Version" setting highlighted

然而,当我通过 New Project 对话框创建Silverlight应用程序项目时,我可以选择.NET Framework版本:

Visual Studio's New Project dialog with the ".NET Framework" setting highlighted

这种.NET Framework版本的选择是否对Silverlight项目有任何影响,或者忽略此设置?

1 个答案:

答案 0 :(得分:2)

简答: .NET Framework版本选项对创建的Silverlight项目没有立即影响,但对将托管Silverlight应用程序的(可选)ASP.NET Web应用程序项目没有影响。

更长的回答:

创建Silverlight应用程序项目时,Visual Studio将询问您是否还要创建一个ASP.NET Web应用程序项目来托管Silverlight应用程序:

New Silverlight Application dialog with the "Host in a new Web site" setting highlighted

如果您选择创建此类项目,它将定位在前面的 New Project 对话框中选择的.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>