0

そのため、2 つの異なる言語の Web サイトがあり、CurrentUICulture に基づいてリソース ファイルからテキストを取得するように設定しました。

ユーザーがクリックして英語とロシア語を切り替えることができる 2 つのリンク ボタンがあります。

例:

Thread.CurrentThread.CurrentUICulture = new CultureInfo("ru-RU");

そして、これは言語をうまく切り替えます。しかし、ブックマークを付けたり、特定の言語でページへのリンクを送信したりするために、現在の言語を現在の URL に何らかの形で反映させたいと考えています。これらの例のように:

  • www.mysite.com/contact/index.aspx?lang=ru
  • www.ru.mysite.com/index.aspx
  • www.mysite.com/ru/contact.aspx (ただし、このディレクトリは実際には存在しません)

また、2 つの異なる言語間で Google アナリティクスのデータを最適に分離する方法についても考えています。

4

2 に答える 2

0

urlで言語パラメーターを渡し、InitializeCultureでこのパラメーターを解析してを設定しCurrentUICultureます。言語パラメータには、クエリ文字列またはルーティングを使用できます。

URLに加えて、言語を決定するためのフォールバックとして他の状態管理オプションを使用できます。ただし、通常はURLを使用して状態をリセットできると便利です。

ASP.NETの[言語の切り替え]ボタンには、次を使用できます。

  • <asp:Hyperlink>、NavigateUrlの言語パラメータを使用
  • <asp:LinkButton>、イベントハンドラーのResponse.Redirectを使用

関連項目:

ASP.netの多言語サイトでURLを処理するための最良の方法

于 2011-06-16T15:52:55.507 に答える
0

このパラメーターを読み取るには、HttpModule をお勧めします。これをユーザーの永続的な Cookie に保存することも考えましたか?

このリンクを参照してください -

ローカリゼーションに HttpModule を使用しても安全ですか?

于 2011-06-16T15:39:33.323 に答える