Windows Sever 2003 の IIS 6 から Windows 2008 の IIS 7 に約 100 の ASP.net サイトを移行しました。有効な DateTime として認識されます。」これは、サイトの CurrentCulture がデフォルトで「en-US」に設定されているため、英国のユーザーが予期しない形式で日付を入力しているという事実まで追跡しました。
質問は、どこから en-US を取得しているのかということです。上から順に、[コントロール パネル] > [地域と言語] を見ると、すべて英語 (英国) に設定されています。サイトの web.configs に <globalization> セクションがないか、<globalization culture="auto" uiCulture="auto" /> として設定されています。「IIS7 - .Net グローバリゼーション」では、すべてのサイトのカルチャが「不変の言語 (不変の国)」に設定されています。
カルチャを「en-US」に設定している場所はどこにも見つかりません...しかし、何かがあります。
Thread.CurrentThread.CurrentCulture.Name is outputting 'en-US'
Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencySymbol is outputting '$'
<globalization culture="en-GB" uiCulture="en-GB" /> をすべての web.config に追加することで問題を解決できますが、約 100 個の web.config を手動で編集する必要はありません。en-GB に設定されているサーバー OS 設定からカルチャを継承したくありません。
何か不足していますか?