browserCaps 要素 (ASP.NET 設定スキーマ)
[このドキュメントはプレビューのみを目的としており、以降のリリースで変更される可能性があります。プレースホルダーとして空白のトピックが含まれています。]
サポートされているブラウザーの設定およびサポートされているブラウザーの機能を指定します。 browserCaps 要素は、新しいブラウザーとその機能を指定するために、必要に応じて更新できます。
注意
Web.config ファイル内で browserCaps 要素を使用してブラウザーを定義する方法は、.NET Framework 2.0 では使用されませんが、サポートは継続しています。この要素内のデータは、マシン レベルの machine-level %SystemRoot%\Microsoft.NET\Framework\version\CONFIG\Browsers フォルダーおよびアプリケーション レベルのすべての App_Browser フォルダーに配置されているブラウザー定義ファイル (.browser) の情報とマージされます。詳細については、「ブラウザー定義ファイルのスキーマ (browsers 要素)」を参照してください。
<browserCaps>
<result />
<use />
[browser capability property assignments]
<filter>...</filter>
</browserCaps>
属性および要素
以降のセクションでは、属性、子要素、および親要素について説明します。
属性
属性 |
Description |
---|---|
userAgentCacheKeyLength |
省略可能な String 属性です。 内部キャッシュのキャッシュ ブラウザー機能オブジェクトのキーとして使用するブラウザー識別文字列の長さを指定します。 ブラウザー機能オブジェクトの詳細については、「ブラウザー定義ファイルのスキーマ (browsers 要素)」を参照してください。 この属性は .NET Framework Version 2.0 で新たに追加されました。 既定値は、"64" です。 |
子要素
要素 |
Description |
---|---|
filter |
省略可能な要素です。 個々の設定を特定のブラウザー定義に適用できる検索文字列の一覧を指定します。 |
result |
browserCaps セクションの解析結果を保持するために使用する、HttpCapabilitiesBase から派生したクラスを指定します。 機能は、ブラウザーごとにキーと値の文字列のペアとして格納されます。 この要素は、.NET Framework Version 2.0 でも適用されます。 |
use |
filter 要素および case 要素に格納されているブラウザー機能情報の解析に使用する HTTP 要求文字列を指定します。 |
親要素
要素 |
Description |
---|---|
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 |
参照
処理手順
How to: Detect Browser Types in ASP.NET Web Pages
How to: Configure Specific Folders Using Location Settings
How to: Lock ASP.NET Configuration Settings
Reference
system.web 要素 (ASP.NET 設定スキーマ)
browserCaps の filter 要素 (ASP.NET 設定スキーマ)
browserCaps の result 要素 (ASP.NET 設定スキーマ)
browserCaps の use 要素 (ASP.NET 設定スキーマ)
ブラウザー定義ファイルのスキーマ (browsers 要素)
HttpCapabilitiesSectionHandler
概念
ASP.NET Server Controls and Browser Capabilities
ASP.NET Configuration File Hierarchy