3

据我所知,Silverlight 应用程序不在 .NET Framework 的 CLR 上运行,而是在它的一个独立的子集版本上运行,称为 Core CLR。我也知道我可以在Project Properties窗口中更改 Silverlight 版本:

项目属性窗口

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

Visual Studio 的新建项目对话框

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

4

1 回答 1

2

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

更长的答案:

创建 Silverlight 应用程序项目时,Visual Studio 会询问您是否还想创建一个 ASP.NET Web 应用程序项目来托管您的 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>
于 2014-11-05T22:13:52.493 回答