尝试使用适用于 Linux 的单声道编程GTK#应用程序(尽管GTK#与我的问题没有直接关系)。
现在,我遇到的问题是我在IPaddress中使用了 MapToIPv4()功能。当定位Mono 4.5时,这个功能运行得很好但是当它推出到我的Linux开发环境时,函数会抛出
汇编/usr/lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll中的“缺少方法System.Net.IPAddress :: MapToIPv4(),在程序集myapp中引用。 exe“
经过一番研究,我发现这是因为这个功能只在MONO / .NET 4.5而不是4.0中,而且看起来我的Linux环境只能达到4.0(因为如果我的目标是4.0,它就不会用这个函数编译)。 (4.5也没有显示为已安装的单声道包,虽然称为“Mono Core库(用于CLI 4.5)”,但确实如此。
如何让我的Linux允许使用此功能?这甚至可能吗?我正在使用 Debian Wheezy (7.8),我所使用的单声道版本是4.0.1,最新版本。如果需要更多信息,请告诉我。 谢谢。
答案 0 :(得分:0)
首先要澄清一些困惑:Mono的版本号有no relationship和.NET版本号,即Mono 3.12.0也提供了.NET 4.5配置文件。
正如您所知,MapToIPv4()
方法仅适用于.NET 4.5及更高版本(不适用于.NET 4.0)。您看到的例外情况是因为Mono还没有实现此特定API。有一个打开请求添加它:https://github.com/mono/mono/pull/641。
在此期间,您唯一的选择就是在代码中自行实现转换。