本文介绍了在 Xamarin.Android 中的日历之间转换日期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下将公历日期转换为回历日期的代码片段.
I have the following snippet of Code for Convert Gregorian Date to Hijri Date.
public static string GregoriantoHijri(DateTime gregorianDate)
{
CultureInfo arCI = new CultureInfo("ar-SA");
var hijriCalendar = new HijriCalendar();
hijriCalendar.HijriAdjustment = App_Code.StoreRetrieveSettingsAssist.getHA();
arCI.DateTimeFormat.Calendar = hijriCalendar; //CODE FAILS HERE
string hijriDate = gregorianDate.ToString("dd-MM-yyyy", arCI);
return hijriDate;
}
此代码非常适合我的 Windows Mobile 应用程序,该应用程序也发布在 Store 上.但是,相同的代码在 Xamarin.Android 中给我带来了问题
错误:
System.ArgumentOutOfRangeException:
不是给定文化的有效日历.
参数名称:值
我不明白为什么使用相同 .NET 基类的代码在不同平台上会出现问题.您能否提出解决方法,因为这似乎不起作用.
I don't understand why codes using same .NET base class have issues on different platforms. Can you suggest a workaround cause this doesn't seem to work.
推荐答案
您可能需要考虑 NodaTime一>.据说它比原生 .NET 日期时间处理更健壮,并且应该支持 Hijri.
You might want to consider NodaTime. It is supposedly more robust than the native .NET datetime handling, and is supposed to support Hijri.
这篇关于在 Xamarin.Android 中的日历之间转换日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!