問題タブ [cultureinfo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - 「文化」(es-MX、en-US など) は、ウェブサイトのコンテンツまたは外観をローカライズするためのものですか?
Web サイトの外観 (言語、日付および数値の形式など) のローカライズのみに使用されるコンセプト カルチャ (.NET CultureInfo と同様) です。また、Web サイトのコンテンツ (場所に限定されたニュース メッセージ、連絡先の詳細など) のローカライズに使用することもできます。 .)?
ローカライズされたコンテンツとして両方の多言語をサポートする Web サイトを構築する必要があります。たとえば、米国ではオランダ語 ('nl-US') を指定する方法がないことがわかりました。Web サイトの URL に言語と場所の両方を指定したいと考えています。これは、 www.domain.com/en-US/Netherlands/ のようにする必要があることを意味しますか?
私の問題が明確であることを願っています..よろしくお願いします。
.net - 文化に基づいて週末の日を見つける
.NET フレームワークを使用して、異なるカルチャに基づいて週末または平日を構成する日を見つける方法はありますか? たとえば、一部のイスラム教の国では、日曜日から木曜日までが週の勤務日となっています。
asp.net - asp.net で利用可能な言語を取得する
訪問者の PC にインストールされている利用可能な言語を取得しようとしています。問題は、インターネット ブラウザから言語を取得したくないことです。
何か提案はありますか?
c# - C# でこの DateTime 解析に失敗するかどうかをテストしますか?
単体テストの実行中に日付の解析に問題がありますが、再現できません。さらに興味深いことに、テストが継続的インテグレーション プロセスによって実行されると失敗しますが、Visual Studio 内で実行されると成功し、ユーザーは異なりますが、両方とも同じマシンで実行されます。
テストは次のとおりです。
(イタリア語では、短い日付形式は dd/MM/yyyy です)
失敗すると予想される理由は、イタリア文化の短い日付パターンが dd/MM/yy になるようにマシンの国際設定を変更しているためですが、正しく取得されていないか、とにかく、少なくとも手動で実行するときは、それを解析できるほどスマートです。
テストを失敗させる方法はありますか?
asp.net - システム文化の検出による多言語サイトの SEO への影響
ASP.NET で多言語サイトを開発しました。これは、ユーザーのシステム カルチャを検出し、適切な言語でコンテンツを表示します。
これはすべてうまく機能していますが、私のクライアントはその後 SEO 監査を受けました。SEO エージェンシーは、言語ごとに固有の URL がないため、これは SEO の良い慣行ではないという懸念を表明しています。
彼らは、このサイトがクローキングで告発されている可能性があり、Google が異なる言語ごとにサイトを正しくインデックス化していない可能性があることを示唆しています。
これらが有効な懸念事項であるかどうか、およびサイトの言語バージョンごとに固有の URL を使用する利点があるかどうかについてのアイデアはありますか?
asp.net - テストプロジェクトでCultureInfoを設定しますか?
web.config でグローバリゼーションを設定した MVC アプリがあります。Web アプリではすべて問題ありません。しかし、私のテスト プロジェクトでは、サービス レイヤーで問題が発生しています。dd/MM/yyyy の形式で生年月日を尋ねています。これを文字列としてサービス層に渡します。正しくフォーマットされていることを確認するための RegEx がありますが、正しくフォーマットされていて、それを日付に変換しようとすると、エラーが発生します。これは、CultureInfo が en.US に設定されているためです。en.GB にしたいのです。初期化テストメソッドの1つで次のことを試みましたが、役に立ちませんでした:
テスト プロジェクトで CultureInfo を設定する方法はありますか?
c# - 文化のフォールバック
次のコードが正しいと仮定します。
CultureInfo culture = CultureInfo.GetCulture("en-US"); Assert.IsTrue(culture.GetConsoleFallbackUICulture().Name == "en");
しかし、そうではありません。culture.GetConsoleFallbackUICulture().Name はまだ "en-US" です。フォールバック カルチャを取得するための API を知りたいです。
ありがとうジェフ
c# - .NET アプリケーションまたはスレッドだけに CultureInfo を設定することはできますか?
GUI や UI を持たない C# で記述されたアプリケーションがありますが、代わりに別のアプリケーション (XML など) によって解析されるファイルを記述します。
CultureInfo の NumberDecimalSeparator がコンマに設定されている顧客がいます。これにより、浮動小数点数で解析エラーが発生します (PI は3,1415になります)。
すべてのスレッドに対して、CultureInfo をアプリケーション内でグローバルに設定する方法が必要です。私はもう試した:
- CurrentThread.CurrentCultureをMain()の最初の行として設定する (明らかに) 慣習的なアプローチですが、リセットされるようです。
- http://www.codeproject.com/KB/cs/Change_App_Culture.aspxのバリエーション/拡張
- アプリケーションで明示的に作成されたスレッドで同じ (#1) を実行します。
また、明示的な書式設定を使用するように変更することはできません (15 万行以上、ほとんどが元従業員によって書かれています)。
[編集] アプリケーションはソケットにバインドし、専用クライアントからの要求を処理します。リクエストのタイプに応じて、さまざまなハンドラ クラスが生成されます。
申し訳ありませんが、最初に投稿したとき、明示的に生成されたすべてのハンドラーでもこれを行ったことを #1 で明確にする必要がありました。
問題の原因となっているスレッド/ハンドラを見逃していたことが判明しました。 したがって、アプリケーションは現在正常に動作していますが、カルチャをすべてのスレッドに設定できるかどうかについては疑問が残ります。
すべてのスレッドを反復処理できれば、問題も解決します。そう:
現在のプロセスですべてのThreadオブジェクト ( ProcessThreadではない)を取得するにはどうすればよいですか?
.net - .NET 3.5のCultureInfoクラスでサポートされているカルチャは何ですか?
使用するOSに関係なく、.NET3.5でサポートされているカルチャのリストが必要です。理由はわかりませんが、これを取得するのはかなり苦労しているようです。
編集:ああ、私はそれがOSに依存していることに気づいていませんでした、それはドキュメントの欠如を説明するでしょう。Mac / Linux OSでも何がサポートされているかについてのアイデアはありますか?
ありがとう :)