1
私は、グレゴリオ暦の日付をヒワリ日に変換するコードの次のスニペットを持っています。Xamarin.Androidのカレンダー間で日付を変換する
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のアプリケーションのために完璧に動作します。 は、しかし、同じコードがXamarin.Android
に私にエラーの問題を与えている:同じ.NETベースクラスを使用してコードが異なるプラットフォーム上の問題を持っている理由
System.ArgumentOutOfRangeException:
Not a valid calendar for the given culture.
Parameter name: value
が、私は理解していません。これがうまくいかないような回避策を提案できますか?
私は、アンドロイドのカウントが.NETのカウントとは異なることを正しく覚えています。 1月は0ではありません。したがって、問題は次のとおりです。例外が発生したときに、gregorianDateパラメータに指定された日付は何ですか? –
@tequilaslammer今日はグレゴリオ暦のどの日付でも使用しています。後で日付を変換する機能を追加する予定です –