1

我从一个刚刚退出并且没有留下任何说明或文档(无论如何)的开发人员那里继承了一个 Silverlight 项目。争先恐后地收拾残局,让我的沙箱正常工作。

公司给了我一个 VS 2010 Developer 的许可证,我已经安装了它。我打开项目的 SOLUTION 文件并尝试清理 -> 构建它,但出现编译器错误。它缺少System.Windows.Interactivity.dll文件。我已经安装了 Silverlight SDK 和 Expression Blend,这两个地方是之前的 SO 问题(与此类似,但不完全相同!)推荐看。

虽然我确实在 Expression Blend 的安装中看到了它,但当我尝试将其添加为 Silverlight 项目的引用时,我收到以下错误:

您不能添加对 System.Windows.Interactivity.dll 的引用,因为它不是针对 Silverlight 运行时构建的。Silverlight 项目仅适用于 Silverlight 程序集。

我在这里有什么选择?!?提前致谢。

4

3 回答 3

4

添加引用时,请确认您添加的是 Silverlight 文件夹下的 dll(即“Silverlight”应位于程序集名称的路径中)。

根据 SL 4.0 或 5.0,应在以下文件夹中找到它(如果运行 32 位 Windows,则排除“(x86)”):
由 Expression Blend 4 安装:
C:\Program Files (x86)\Microsoft SDKs\Expression \Blend\Silverlight\v4.0\Libraries

由 Silverlight 5 的 Microsoft Expression Blend Preview 安装:( http://www.microsoft.com/download/en/details.aspx?id=9503 ) C
:\Program Files (x86)\Microsoft SDKs\Expression\Blend\Silverlight \v5.0\库

于 2012-04-09T15:58:58.260 回答
1

快速而肮脏的解决方案是为 Silverlight 安装 Blend SDK。根据您的描述,这些程序集应该已经在您的系统上,但由于某种原因它们不在(或者它们在一个奇怪的地方)。您描述的错误的原因是您试图将程序集的 WPF 版本添加到 Silverlight 项目,这显然是一个禁忌。(解决该问题的两种方法:WPF 版本应该有 4.x 版本,而 Silverlight 版本将有 SL4 的 2.x 或 SL5 的 5.x。所以你可以通过版本号来区分。或者你可以得到像 Productivity Power Tools 这样的 Visual Studio 扩展,它为您提供了添加引用的更好方法。)

请注意,如果您正在使用 Silverlight 5,获取这些程序集的唯一方法是安装Silverlight 5 的 Blend Preview。Silverlight 5 的 Blend SDK 的独立安装程序尚不存在。

于 2012-04-10T01:22:55.807 回答
0

这些文件位于 Program Files (x86) 中

C:\Progra~2\Microsoft SDKs\Expression\Blend\.NETFramework\v4.0\Libraries\System.Windows.Interactivity.dll
C:\Progra~2\Microsoft SDKs\Expression\Blend\Silverlight\v4.0\Libraries\System.Windows.Interactivity.dll
C:\Progra~2\Microsoft SDKs\Expression\Blend\Silverlight\v5.0\Libraries\System.Windows.Interactivity.dll
于 2012-04-09T23:02:43.327 回答