2

我试图在 Visual C# 2010 Express 中访问 System.Collections.Generic.Stack<>,但 IDE(和编译器)声称它不存在。还缺少其他几个类,包括 LinkedList<>、SortedList<> 和 Queue<>。我检查了 System.Collections.Generic 命名空间和 C# Express 的文档,找不到任何故意限制的参考。

奇怪的是,如果我按字母顺序对 System.Collections.Generic 命名空间的文档内容进行排序,则 List<> 之后的所有内容都会丢失,但这可能只是一个非常奇怪的巧合。

编辑:我尝试使用 MSBuild 进行命令行构建,它也抱怨错误 CS0246。但是,使用 csc 有效。

跟进:我尝试从我的项目中删除所有资源并添加一个刚刚创建 Stack<> 实例的存根类。不仅如此,在重新添加旧类并删除存根后,一切仍然有效。我只能假设发生了某种缓存愚蠢行为。很烦人。如果这个问题再次出现,我会重新打开。

4

1 回答 1

2

我希望您的项目缺少对 System.dll 的引用。

检查解决方案资源管理器中的“参考”下是否列出了“系统”。如果没有,请右键单击引用,选择“添加引用...”,然后添加对“系统”的引用。

注意:List<T>在 mscorlib.dll 中,所有按字母顺序排列的集合List<T>都在 System.dll 中,这就是为什么我认为这是正在发生的事情。

于 2011-07-23T04:03:38.217 回答