未找到StringDictionary类型或命名空间,但包含正确的命名空间

时间:2014-06-20 02:18:31

标签: c# .net visual-studio-2013 windows-8.1

我正在尝试在带有.NET 4.5框架的Windows 8.1应用程序中使用StringDictionary,但VS无法找到StringDictionary类。根据{{​​3}}文档,StringDictionary位于System.Collections.Specialized命名空间中。我确保包含正确的命名空间,它不会构建。

我看到其他人也有类似的问题,因为VS默认使用.NET 4.0 Client框架,并且通过将目标平台更改为完整的.NET 4.0框架来解决问题。看看这个MSDN。但是VS 2013中的Windows 8.1项目并没有让我选择更改目标平台,并且.NET 4.5中的框架没有区别。

以下是重新创建问题的步骤:

  1. 在VS 2013中创建新项目
  2. 在Windows应用商店模板下选择C#类库(或任何模板)
  3. 创建一个简单的测试类文件。我使用了MSDN上的示例中的代码,找到了question
  4. 如果有人知道如何诊断这些问题,那将非常有帮助。我发现您可以使用fuslogvw命令从Visual Studio命令行解决程序集问题,但它没有帮助。

1 个答案:

答案 0 :(得分:1)

这个类在WinRT中不可用(是的,它拥有自己的.NET Framework)。您链接的MSDN页面明确指出该类没有.NET for Windows Store apps目标支持。例如,请查看与通用Dictionary class的区别(向下滚动到Version Information部分)。