【问题标题】:PCLs: "The type or namespace name 'Thread' could not be found"PCL:“找不到类型或命名空间名称‘线程’”
【发布时间】:2017-04-18 06:05:41
【问题描述】:

我在 VS 2015 Update 3 中将我的类库更改为 PCL 时遇到问题。缺少一些应该存在的类型,最明显的是 Threaddocumentation

  • .NET Framework:从 1.1 开始提供
  • 可移植类库:支持:可移植 .NET 平台
  • Silverlight:从 2.0 开始提供
  • Windows Phone Silverlight:从 7.0 开始提供

我的目标似乎兼容。有什么想法吗?

【问题讨论】:

    标签: .net portable-class-library


    【解决方案1】:

    在谈到 PCL 时,MSDN 文档通常有点误导。 Portable Class Libraries 列在 Available in 部分的事实仅表明该类型在至少一个 PCL 配置文件中可用。但是,不能保证该类型在特定的 PCL 配置文件中可用,即使该类型在所有目标平台中都可用。

    您选择的 PCL 配置文件(配置文件 49)支持 Thread 类。如果您将 .NET Framework 重新定位到 4.0(PCL 配置文件 136),Thread 可用,但实际上无用,因为仍然不支持大多数相关方法。

    因此,简而言之,如果您想针对这两个平台,您将无法在 PCL 库中使用Thread。您需要将 Thread 功能放置在特定于平台的库中。

    【讨论】:

    • 你知道为什么会这样吗?如何找出哪些配置文件具有 Thread 类?以及如何将我的项目设置为使用特定编号的配置文件?
    • 有一个有点过时的工具,叫做 PCL Compliance Analyzer,它是由 Vagif Abilov 为第一代 PCL 开发的。这个工具至少应该能给你一个提示,但请注意它主要适用于旧的 PCL 配置文件。你可以阅读它here,源代码是here
    猜你喜欢
    • 1970-01-01
    • 2017-07-12
    • 2011-05-13
    • 2013-03-25
    • 2012-06-19
    • 2017-11-29
    • 2012-09-27
    • 2011-05-06
    相关资源
    最近更新 更多