单声道C#don';你不认识单子和字典吗?
我正在尝试使用mono为linux构建一个C#应用程序。但似乎字典和列表都不可用?我找不到任何解决这个问题的方法,我觉得有点奇怪,因为在我看来,这两个都是非常基本的 这是测试代码 使用System.Collections.Generic单声道C#don';你不认识单子和字典吗?,c#,dictionary,mono,C#,Dictionary,Mono,我正在尝试使用mono为linux构建一个C#应用程序。但似乎字典和列表都不可用?我找不到任何解决这个问题的方法,我觉得有点奇怪,因为在我看来,这两个都是非常基本的 这是测试代码 使用System.Collections.Generic namespace Test { class Program { static void Main(string[] args) { Console.WriteLine("TESTTEST"
namespace Test
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("TESTTEST");
List<string> s = new List<string>();
Console.Read();
}
}
}
名称空间测试
{
班级计划
{
静态void Main(字符串[]参数)
{
Console.WriteLine(“测试”);
列表s=新列表();
Console.Read();
}
}
}
这是控制台屏幕中的结果:
警告:不支持运行时版本
此应用程序不可用。
使用默认运行时:v1.1.4322
**(Test.exe:3152):警告**:类
System.Collections.Generic.List`1库
d不加载,在mscorlib中使用,
版本=4.0.0.0,区域性=中性,
PublicKeyTo-ken=b77a5c561934e089
未处理的异常:
System.TypeLoadException:无法执行
负载类型“System.Colle”
actions.Generic.从程序集中列出“1”
'mscorlib,版本=4.0.0.0,
文化=中立,
PublicKeyToken=b77a5c561934e089'。德鲁克
从门上看,我的脚
这就是问题所在:
使用默认运行时:v1.1.4322
您希望使用2.0或更高版本的运行时
我的猜测是您正在使用mcs
进行编译-尝试使用gmcs
或dmcs
<代码>gmcs目标2.0和dmcs
目标4.0。有关更多详细信息,请参阅
编辑:啊,这看起来是执行时的问题,而不是编译时的问题。您使用的是哪个版本的Mono?我怀疑它试图找到4.0,但失败了。。。您是否正在运行已经在Windows上构建的代码
尝试安装最新版本的Mono;如果仍然失败,请查看是否可以确定安装了哪些运行时
如果这些都没有帮助,请提供更多详细信息(例如您安装了哪个版本的Mono)。升级到Mono 2.10。它提供了4.0类库,不再提供过时的1.1配置文件。好吧,1.1版实际上没有泛型…您需要为System.Collections.Generic命名空间至少使用运行时版本2.0。Mono的最新稳定版本如下:。兼容性指南如下: