私のプロジェクトでは、すべてのページがいくつかの言語で翻訳可能です。そのために、私は各アクションにサイトランゲージパラメータを渡します。私のカスタムベースコントローラクラスはこの "siteLanguage"パラメータをキャッチし、さらに翻訳ロジックを処理します。私のsiteLanguageパラメータを置く場所(クロスカット懸念?)
これはうまくいきました。私のベースコントローラがそれを捕まえることができるように、すべてのアクションプロシージャの署名にsitelanguageという文字列を追加する必要があります。私は実際のアクションロジックではこのパラメータで何もしません。
これを行うには良い方法がありますか?
CurrentCultureとCurrentUICultureを使用することはどうですか? –
まず、信頼性がありません。第二に、すべての国籍の人々が働くターミナルで使用されます。 –
どのように信頼性がありませんか? Accept-Languageヘッダーなどに基づいて設定することができます。それらは設定されたままになり、すべての文化に敏感なコードによって使用されます。キオスクの場合は、ユーザーが選択できるようにして、CurrentCultureをユーザーの選択から設定します。 –