2013-06-04 2 views
2

Я использую Mono на малине Pi (работает Raspbmc). Большинство вещей (удивительно!) Просто работают, однако есть одна часть кода, которая действует странно.DateTime.Now.Tostring() - weird results

Использования # "оболочки" csharp C, я получаю это (то же результаты для скомпилированного аналога):

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: Это то, что я бегу

[email protected]:~$ 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

похоже, что он возвращает дату серийный – emd

+0

Что такое дата сериала? –

+0

Nevermind ... изучает его дальше, и он не совпадает с серийным номером. Игнорировать меня – emd

ответ

2

Там релевантную ошибка сообщила: https://bugzilla.xamarin.com/show_bug.cgi?id=7938. Причина: использование hardfp вместо softfp с плавающей запятой ABI, которое несовместимо с Mono 2.10. Есть некоторые исправления для поддержки hardfp в Mono, но ничего еще нет.

+0

Спасибо за ссылку на ошибку! Это именно то, что я испытывал. К сожалению, ошибка была открыта 9 месяцев назад (на момент написания), и комментарии не обнадеживают: «* патч связан в комментарии № 3. AFAIK он не будет включен вверх по течению из-за конфликтов лицензий. *" –