Webブラウザーの言語を取得する (アクセスしたクライアントの言語を取得する) - ASP.NET

ASP.NETでアクセスしてきたブラウザの言語を取得する方法を紹介します。
アクセス元のクライアントの言語設定はHttpRequestオブジェクトのUserLanguageに設定されています。UserLanguageは配列になっており、複数の言語をサポートしている場合にはUserLanguageに複数の言語が設定されています。

コード例

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace WebApplication2
{
  public partial class WebForm1 : System.Web.UI.Page
  {
    protected void Page_Load(object sender, EventArgs e)
    {
      if (Request.UserLanguages != null) {
        for (int i=0; i<Request.UserLanguages.Length; i++){
          TextBox1.Text += Request.UserLanguages[i] + "\n";
        }
      }
    }
  }
}

実行結果

日本語OS(Windows 7 Japanese)からアクセスした場合

ja-JP
がテキストボックス(TextBox1)に表示されます

英語OS(Windows 7 English(US版))からアクセスした場合

en-US
がテキストボックス(TextBox1)に表示されます
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
最終更新日: 2024-01-06
作成日: 2011-01-30
iPentec all rights reserverd.