【问题标题】:The type 'Microsoft.Phone.Controls.LongListSelector' exists in both dlls两个 dll 中都存在“Microsoft.Phone.Controls.LongListSelector”类型
【发布时间】:2013-03-10 01:21:39
【问题描述】:

错误信息如下:

“Microsoft.Phone.Controls.LongListSelector”类型存在于两者中 '...\Microsoft SDKs\Windows Phone\v8.0\Libraries\Microsoft.Phone.Controls.Toolkit.dll' 和 '...\参考 程序集\Microsoft\Framework\WindowsPhone\v8.0\Microsoft.Phone.dll'

我正在使用最新版本的工具包(2012 年 10 月),它是一个 Windows Phone 8 项目。

我不确定为什么会发生这种情况,因此我不知道哪些额外信息可能是相关的,但如果您有任何问题,请尽管提问。

【问题讨论】:

  • 看起来您引用了旧版本的工具包。您是否尝试在 NuGet/库包管理器中为您的项目升级工具包引用?你有最新版本的 NuGet 吗?
  • 是的,是的。我现在在下面添加了这个问题的答案。

标签: c# silverlight dll windows-phone-8 silverlight-toolkit


【解决方案1】:
  1. 从 Visual Studio 更新安装 Nuget Packet Manager

  2. 在解决方案资源管理器中右键单击引用,然后转到管理 nuget 数据包

  3. 在左侧面板转到在线=>nuget 官方包源

  4. 在右侧面板上搜索“windows phone toolkit”

  5. 安装并享受..

原因是,在 wp7 的早期 longlistselector 不存在,所以他们在工具包中制作 但在 wp8 中,包含了 longlistselector - 这导致与 wp7 过时的工具包发生冲突 所以更新工具包可以解决问题。

【讨论】:

    【解决方案2】:

    我仍然不知道为什么会这样,但是通过 NuGet 卸载工具包并重新安装似乎已经解决了问题。

    【讨论】:

    • 你能告诉我如何卸载工具包。
    • 我认为您可以将其从解决方案中删除。
    【解决方案3】:

    这是一个命名问题。 WP8 SDK包含LongListSelector类,WP Toolkit也有同名类。

    有类似的讨论here

    您需要更新 NuGet 并安装最新版本的 Windows Phone Toolkit。

    官方FAQ解决方案:

    Q - 我有 WP8 SDK 并且我安装了 NuGet 包,它仍然是 安装 7.1 版本的工具包程序集,或者我得到一个错误 – “您正试图将这个包安装到一个针对目标的项目中 'WindowsPhone,Version=v8.0',但包中不包含任何 与该框架兼容的程序集引用。”

    A – 您拥有旧版本的 NuGet。从以下位置安装最新的 NuGet www.NuGet.org。关闭并重新启动 Visual Studio 的所有实例。 现在安装软件包。它将正确安装。 WP8 项目是 从 Nuget 2.1 开始支持。

    【讨论】:

    • 我已经在使用最新版本的 NuGet(昨天才下载)。
    • 安装新版工具包解决了这个问题。
    猜你喜欢
    • 2013-01-20
    • 1970-01-01
    • 2012-07-30
    • 1970-01-01
    • 1970-01-01
    • 2012-05-16
    • 2011-11-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多