5

私のコード:

dateObject.Value.ToString(Model.Culture)

dateObjectはタイプですDateTime?Model.Culture、タイプは ですCultureInfo

(文化に依存する) 出力:

1960/08/17 00:00:00

00:00:00形式プロバイダーを指定せずに 、その部分を削除したいと思います。日付の形式が既に含まれている必要がありますが、どこかで (しかし、どこで、どのように?)いつでも出力しないModel.Cultureように指定したいと思います。

DateTime を Date オブジェクトにキャストすることを考えていましたが、残念ながら C# にはそのようなオブジェクトはありません。日付形式を直接ハードコーディングすると、動的でカルチャに依存するプログラムを作成できなくなります。

4

4 に答える 4

5

" 形式プロバイダーを指定する必要なし" ... "日付形式を直接ハードコーディングすると、動的でカルチャに依存するプログラムを作成できなくなります。"

フォーマット文字列とカルチャを提供できるようにするオーバーロードを使用できます。

string result = dateObject.Value.ToString("d", Model.Culture);

または、それが望ましい/可能な場合は、カルチャを変更します。

System.Threading.Thread.CurrentThread.CurrentCulture = Model.Culture;
string result = dateObject.Value.ToShortDateString();
于 2013-08-21T09:24:55.473 に答える
1

多分あなたはこれを探しています:

dateObject.Value.ToString("d", Model.Culture)
于 2013-08-21T09:24:21.717 に答える
0

文字列フォーマットを使用して次のことを試してください

dateObject.ToString("dd/MM/yyyy");

日付形式

于 2013-08-21T09:21:27.447 に答える