Silverlight 4:如何解决Microsoft.Silverlight.CSharp.targets未找到的问题?

50

我正在将一些使用Silverlight 3编写的应用程序升级到Visual Studio 2010中的Silverlight 4版本。我的Silverlight 3应用程序在Visual Studio中打开正常,但是SL4应用程序不行,出现以下错误:

C:\Path\To\MyProject.csproj : error : 无法读取项目文件 'XNTVOD.AdminClient.csproj'。 C:\Path\To\MyProject.csproj(593,3): 已找不到导入的项目 "C:\Program Files (x86)\MSBuild\Microsoft\Silverlight\v4.0\Microsoft.Silverlight.CSharp.targets"。请确认 <Import> 声明中的路径是否正确,并且磁盘上存在该文件。

我曾经遇到过较老的VS Silverlight组件问题,最近卸载了大部分SL组件,在“添加/删除程序”中,我现在只有安装了以下三个组件:

  1. Microsoft Silverlight
  2. Microsoft Silverlight 3 SDK
  3. Microsoft Silverlight 4 Toolkit April 2010

对于SL4项目,<import>声明如下:

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\$(SilverlightVersion)\Microsoft.Silverlight.CSharp.targets" />

而这个文件夹C:\Program Files (x86)\MSBuild\Microsoft\Silverlight\v4.0中只有两个文件:

Microsoft.Ria.Client.targets

Microsoft.Ria.Client.VisualStudio.targets

我缺少哪个Silverlight开发组件?我看到有很多不同的选项,从Silverlight 4 SDK Beta到VS Tools for Silverlight 4等等。 我不想安装会让我回到以前过时组件的情况下的东西。


我遇到了类似的问题。我的错误提示显示我在"\Silverlight\v3.0"中缺少正确的文件,尽管我已经安装了v4.0。我也有正确的Silverlight 4.0文件,但VS似乎无法识别它。 - Jason L
6个回答

44

3
Visual Studio 2015怎么样?每个Visual Studio版本都有不同的链接吗,还是版本无关? - Veverke

18

缺少的文件包含在Silverlight 4 SDK中。你可以选择只安装Silverlight 4 SDK,或重新安装整个Silverlight 4 Tools for VS2010软件包(这将重新安装开发者运行时、SDK、针对VS2010的热修复程序、Silverlight 4 Tools软件包和WCF RIA服务)。


2
在VS SP1的情况下,您无法重新安装SL 4 Tools fo VS2010。只需重新安装SDK即可。 - artur02
安装Silverlight 4 SDK是我所需要的,因为我需要在没有VS2010但有2013的情况下使用它。 - fnicollet

11

如果在尝试在Silverlight 5中打开版本4项目时该机器上没有安装版本4,则可能会遇到此问题。在经过几个小时的尝试后,对我有效的方法是编辑csproj文件并更改Silverlight目标版本。

<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>

从4到5


这对我非常有效!而且我不需要安装任何我永远不会使用的4.0组件。谢谢! - Josh McKearin
1
我遇到了这个问题,并且在那个部分已经有了v5.0。 - B. Clay Shannon-B. Crow Raven
你需要使用 x86 而不是 Any CPU 来构建它。 - SliverNinja - MSFT

5

4
经过多次尝试,我觉得以下方法有效: 1. 进入“添加或删除程序”(add or remove programms) 2. 移除所有已安装的Silverlight版本(4, 5及未指定版本都要移除!) 3. 安装 Silverlight 4 SDK 4. 安装 Silverlight 5 for developers 最后,在 VS 2010 SP1 中打开项目。

0

以前正常运行的安装可能会在服务器上安装新版本的TFS(或者是与我的MSBuild混淆的任何东西)时出现故障。

我的“targets”文件从Server 2012的C:\Program Files (x86)\MSBuild\Microsoft\Silverlight\v5.0中消失了,重新安装工具。

我相信可以只从另一台机器复制目标文件,但不确定。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接