ログインしたユーザーごとに保存されているCultureInfoを使用するグローバル化されたWebアプリケーションを変更しています。CultureInfo&DateTimeInfo:24時間の確認方法は?
クライアントがローカライズされる時間データ入力をしたいと思います。書式設定が既に利用可能であるため、表示は問題ではありません。しかし、現在のcultureinfoが24時間またはam/pmであるかどうかを検出する必要があるので、正しい入力ボックス(テキストフィールドだけでなく)を表示できます。
私の最初のアイデアは、のCultureInfoのDateTimeInfoプロパティをチェックしてShortTimePatternは資本Hまたは小文字hを含んでいますが、これは私のために十分な堅牢感じなかったかどうかを確認することでした。
良い方法がありますか?私は両方のクラスのプロパティを読んだことがありますが、私が何か不足していない限り、私は既存のメソッドやプロパティを見ることができません。
おかげで@mlessard - エスケープ文字のためにチェックすることをお勧めします。私たちはカスタムカルチャーを使用していないので、おそらくこの段階ではやっていないでしょう。 – toxaq
これは拡張メソッドとしてこの機能を作成するために使用したコードです。 using System; using System.Globalization; 名前空間My.Extensions {パブリック静的クラスCultureInfoExtensions {パブリック静的ブールIs24HourTime(このCultureInfoカルチャ) {戻りculture.DateTimeFormat.ShortTimePattern.Contains( "H")。 } } } – toxaq