コンソールアプリケーションの特定のカルチャで完全なDateTimeを取得する方法

Jan 16 2021

私の要件は、指定されたロケールでDateTimeを取得することであり、以下のコードを使用してこれを達成しようとしています

var d1 = DateTime.Now;
CultureInfo culture = new CultureInfo("en-NZ");
var da = d1.ToString("d1", culture);
Console.WriteLine("Output" + da);

output: Friday, 15 January 2021 11:55 pm

「to、en-NZ、en-AU、de-DE」などの一部のカルチャでは正常に機能しますが、「fr-CA、en-CA」では機能しません。

var d1 = DateTime.Now;
CultureInfo culture = new CultureInfo("en-CA");
var da = d1.ToString("d1", culture);
Console.WriteLine("Output" + da);

Output: 15 janvier 2021 23:55

Fr-CAおよびen-CAの場合**曜日が表示されません**

誰かがこの問題で私を助けることができますか?

回答

SarekaAvinash Jan 21 2021 at 19:15

曜日が表示されない理由は、アプリケーションが.NET Frameworkで実行されているため、framework / .NETCore3.1 / ..がすべてのカルチャの曜日をサポートしているわけではないためです。

.NET5で同じアプリケーションを実行すると、すべてのカルチャで曜日がサポートされます