我在Raspberry Pi上使用Mono(运行Raspbmc)。大多数事情(令人惊讶!)只是工作,但有一段代码表现得很奇怪。
使用csharp
C#“shell”,我得到了这个(编译对应的结果相同):
csharp> DateTime.Now.ToString();
"00/735023/0001 23:05:56"
csharp> DateTime.Now.ToString("dd"); //get day numeral
"735023"
csharp> DateTime.Now.ToString("MMMM"); //get month name
System.ArgumentOutOfRangeException: Argument is out of range.
at System.Globalization.DateTimeFormatInfo.GetMonthName (Int32 month)
[...]
...但是,访问单独的属性有效:
csharp> DateTime.Now.Day.ToString();
"4"
csharp> DateTime.Now.Month.ToString();
"6"
csharp> DateTime.Now.Year.ToString();
"2013"
知道发生了什么,或者至少我应该提交错误的地方?
FWIW:这就是我正在运行的
pi@raspbmc:~$ mono -V
Mono JIT compiler version 2.10.8.1 (Debian 2.10.8.1-5)
Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: normal
Notifications: epoll
Architecture: armel,vfp
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: Included Boehm (with typed GC and Parallel Mark)
答案 0 :(得分:2)
报告了相关的错误:https://bugzilla.xamarin.com/show_bug.cgi?id=7938。原因:使用hardfp而不是与Mono 2.10不兼容的softfp浮点ABI。有一些补丁来支持Mono中的hardfp,但还没有主线。