browserCaps 要素 (ASP.NET 設定スキーマ)
更新 : 2007 年 11 月
サポートされているブラウザの設定およびサポートされているブラウザの機能を指定します。browserCaps 要素は、新しいブラウザとその機能を指定するために、必要に応じて更新できます。
メモ : |
---|
Web.config ファイル内で browserCaps 要素を使用してブラウザを定義する方法は、.NET Framework 2.0 では使用されませんが、サポートは継続しています。この要素内のデータは、マシン レベルの machine-level %SystemRoot%\Microsoft.NET\Framework\version\CONFIG\Browsers フォルダおよびアプリケーション レベルのすべての App_Browser フォルダに配置されているブラウザ定義ファイル (.browser) の情報とマージされます。詳細については、「ブラウザ定義ファイルのスキーマ (browsers 要素)」を参照してください。 |
configuration 要素 (全般設定スキーマ)
system.web 要素 (ASP.NET 設定スキーマ)
browserCaps 要素 (ASP.NET 設定スキーマ)
<browserCaps>
<result />
<use />
[browser capability property assignments]
<filter>...</filter>
</browserCaps>
属性と要素
以降のセクションでは、属性、子要素、および親要素について説明します。
属性
属性 |
説明 |
---|---|
userAgentCacheKeyLength |
省略可能な String 型の属性です。 内部キャッシュのキャッシュ ブラウザ機能オブジェクトのキーとして使用するブラウザ識別文字列の長さを指定します。ブラウザ機能オブジェクトの詳細については、「ブラウザ定義ファイルのスキーマ (browsers 要素)」を参照してください。 この属性は .NET Framework Version 2.0 で新たに追加されました。 既定値は "64" です。 |
子要素
要素 |
説明 |
---|---|
filter |
省略可能な要素です。 個々の設定を特定のブラウザ定義に適用できる検索文字列の一覧を指定します。 |
result |
browserCaps セクションの解析結果を保持するために使用する、HttpCapabilitiesBase から派生したクラスを指定します。機能は、ブラウザごとにキーと値の文字列のペアとして格納されます。 この要素は、.NET Framework Version 2.0 でも適用されます。 |
use |
filter 要素および case 要素に格納されているブラウザ機能情報の解析に使用する HTTP 要求文字列を指定します。 |
親要素
要素 |
説明 |
---|---|
configuration |
共通言語ランタイムおよび .NET Framework ベースのアプリケーションで使用されるすべての構成ファイルで必要なルート要素です。 |
system.web |
構成ファイルの ASP.NET 構成設定のルート要素を指定します。ASP.NET Web アプリケーションを構成する構成要素やアプリケーションの動作を制御する構成要素が含まれます。 |
解説
browserCaps 要素は、サポートされているブラウザの設定およびサポートされているブラウザの機能を指定します。browserCaps 要素は、新しいブラウザとその機能を指定するために、必要に応じて更新できます。
有効なブラウザ プロパティの一覧については、「HttpBrowserCapabilities」を参照してください。
形式 capsVariableName=regular expression の行は、代入式です。構文 %{capsVariableName} または ${captureGroupName} を match 属性および代入式の右側で使用します。
正規表現の使用方法の詳細については、「.NET Framework の正規表現」を参照してください。この構文の詳細な例を含む完全な browserCaps セクションについては、.NET Framework と共にインストールされる Machine.config ファイルを参照してください。
capsVariableName と共にキャプチャされた名前と値のペアには、HttpCapabilitiesBase クラスから継承される HttpBrowserCapabilities オブジェクトの Item プロパティを使用してアクセスできます。Item プロパティは、C# での既定のインデクサ プロパティです。
既定の構成
.NET Framework Version 2.0 では、サポートされているブラウザとその機能の指定にブラウザ定義ファイルを使用するために、browserCaps 要素の使用は推奨されていません。そのため、次のような制限付きの既定の browserCaps 要素がルートの Web.config ファイルで構成されます。詳細については、「ブラウザ定義ファイルのスキーマ (browsers 要素)」を参照してください。
<browserCaps userAgentCacheKeyLength="64">
<result
type="System.Web.Mobile.MobileCapabilities, System.Web.Mobile, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
/>
</browserCaps>
.NET Framework Versions 1.0 および 1.1 では、machine.config ファイルで構成される既定の browserCaps 要素が、ここに示せないほどの大きさになります。ブラウザ データの更新については、http://www.cyscape.com/browsercaps を参照してください。定期的なデバイスの更新により、このブラウザ機能セクションが置き換えられます。
使用例
任意のバージョンの Internet Explorer に対する User-Agent HTTP ヘッダーを解析する方法を次のコード例に示します (User-Agent 文字列の形式がほとんど変更されていない場合に限ります)。
この例では、.NET Framework の正規表現と、部分式をキャプチャできる正規表現の機能を利用して、バージョン番号を User-Agent 文字列から HttpBrowserCapabilities オブジェクトに直接移動しています。
このファイルでは、Microsoft Internet Information Services (IIS) の browscap.ini ファイルと同様の代入ステートメントの形式で、名前と値のペアを指定します。たとえば、"browser=IE" という行は、browser フィールドの値を "IE" という文字列に設定します。
<configuration>
<system.web>
<browserCaps>
<result type="System.Web.HttpBrowserCapabilities, System.Web"/>
<use var="HTTP_USER_AGENT"/>
browser=Unknown
version=0.0
majorversion=0
minorversion=0
frames=false
tables=false
cookies=false
backgroundsounds=false
<filter>
<case match="^Mozilla[^(]*\(compatible; MSIE
(?'ver'(?'major'\d+)(?'minor'\.\d+)(?'letters'\w*))
(?'extra'.*)">
browser=IE
version=${ver}
majorver=${major}
minorver=${minor}
<case match="^2\." with="%{version}">
tables=true
cookies=true
backgroundsounds=true
<case match="2\.5b" with="%{version}">
beta=true
</case>
</case>
</case>
</filter>
</browsercaps>
</system.web>
</configuration>
要素情報
構成セクション ハンドラ |
|
構成メンバ |
|
構成できる場所 |
Machine.config ルート レベルの Web.config アプリケーション レベルの Web.config 仮想ディレクトリ レベルまたは物理ディレクトリ レベルの Web.config |
必要条件 |
Microsoft Internet Information Services (IIS) バージョン 5.0、5.1、または 6.0 .NET Framework Version 2.0 (使用は推奨されません)、1.1、または 1.0 Microsoft Visual Studio 2003 または Visual Studio 2005 |
参照
処理手順
方法 : ASP.NET Web ページでブラウザの種類を検出する
方法 : Location の設定を使用して特定のディレクトリを構成する
概念
ASP.NET Web サーバー コントロールとブラウザの機能
参照
system.web 要素 (ASP.NET 設定スキーマ)
browserCaps の filter 要素 (ASP.NET 設定スキーマ)
browserCaps の result 要素 (ASP.NET 設定スキーマ)
browserCaps の use 要素 (ASP.NET 設定スキーマ)
HttpCapabilitiesSectionHandler