【问题标题】:Portable class library and .NET ConcurrentDictionary可移植类库和 .NET ConcurrentDictionary
【发布时间】:2012-08-30 17:17:44
【问题描述】:

查看http://msdn.microsoft.com/en-us/library/dd287191(v=vs.110).aspx,似乎ConcurrentDictionary 及其在System.Collections.Concurrent 命名空间中的所有朋友都可以在可移植类库中使用。

但是,当我创建 F# 或 C# 可移植类库时,即使我显式添加对 mscorlib.dll 的引用,使用 ConcurrentDictionary 时编译也会失败。

为什么?

【问题讨论】:

  • 代码?编译错误?
  • 据我所知,.NET 4 可移植类库msdn.microsoft.com/en-us/library/dd287191(v=vs.100).aspx 中没有此类。会不会是您的目标是 .NET 4 而不是 4.5?
  • @AndersGustafsson:当您创建 F# 可移植类库 时,除了定位 .NET 4.5 之外别无选择。
  • 关于这些是否会在 Windows Phone 9 中可用的消息?

标签: .net concurrency f# windows-8 portable-class-library


【解决方案1】:

“便携式”这个词现在应该被广泛使用。创建类库项目时,系统会提示您输入要支持的目标。只有当您选择“.NET Framework”和“.NET for Windows Store apps”时,您才会获得 ConcurrentDictionary。

选择其他任何一个,整个命名空间就会消失。

我认为,随着时间的推移,这会变得更好,但 Windows Phone 7、XBox 和 Silverlight 现在落后了。

【讨论】:

  • 你是对的,但我只得到 C# Projects 的提示。通过停用除您告诉我的两个之外的所有内容,我可以使用此命名空间:)。 F# Portable Class Library 项目模板并没有提示我这些选项:(.
  • 我重复那个。 F# 受到进一步的限制(没有 Xbox 或 Phone)并且有一个固定的子集。其中包括 Silverlight,所以这是不行的。
  • 是的,不幸的是,F# 仅通过可移植支持固定的平台子集; Silverlight 5、.NET Framework 4.5 和 Windows 应用商店应用。
  • 也许这个可以帮助你:nuget.org/packages/Portable.ConcurrentDictionary
猜你喜欢
  • 2013-08-24
  • 2017-05-12
  • 2017-09-11
  • 1970-01-01
  • 2013-08-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-18
相关资源
最近更新 更多