共用方式為


browserCaps 篩選條件的 case 項目 (ASP.NET 設定結構描述)

允許在處理第一個成功比對的項目之後停止進行模式比對。

注意

在 .NET Framework 2.0 版中,使用 Web.config 檔中的 browserCaps 項目來定義瀏覽器是已被取代的功能;不過還是會支援該功能。這個項目中的資料會與來自瀏覽器定義檔 (.browser) 的資訊進行合併,而這些定義檔則是位於電腦層級的 %SystemRoot%\Microsoft.NET\Framework\version\CONFIG\Browsers 資料夾,以及任何現有之應用程式層級的 App_Browsers 資料夾中。如需詳細資訊,請參閱瀏覽器定義檔結構描述 (browsers 項目)

<case 
   match="regex expression"
   with="regex expression"
>
   [browser capability assignments, filter elements, case elements]
</case>

屬性和項目

下列章節會說明屬性、子項目和父項目。

屬性

屬性

描述

match

必要的 String 屬性。

指定 .NET Framework 規則運算式,此規則運算式是針對 with 屬性進行測試。 如果予以省略,則假設該比對已經成功。

with

必要的 String 屬性。

指定要搜尋的 .NET Framework 規則運算式或字串。 如果省略,則會使用 use 項目所指定的字串。

子項目

無。

父項目

項目

描述

configuration

指定 Common Language Runtime 和 .NET Framework 應用程式所使用之每個組態檔中需要的根項目 (Root Element)。

system.web

指定組態檔中 ASP.NET 組態設定的根項目 (Root Element),並包含會設定 ASP.NET Web 應用程式以及控制這些應用程式之行為的組態項目。

browserCaps

指定所支援瀏覽器的設定以及這些瀏覽器的功能。 可以按需要更新 browserCaps 項目,指定新的瀏覽器及功能。

如需有效瀏覽器屬性的清單,請參閱 HttpBrowserCapabilities

filter

指定搜尋字串清單,其可讓您將個人設定套用至特定瀏覽器定義。

備註

case 項目允許在處理第一個成功比對的項目之後停止進行模式比對。

所有 filter 和 case 項目都可以包含指派和其他 filter 與 case 項目。 case 和 filter 群組之間的差異在於:在評估 filter 群組之後,會繼續執行群組之後的陳述式,但在 case 群組成功比對和評估之後,執行會跳至封入群組的結尾。

預設組態

在 .NET Framework 2.0 版中,不會設定 case 項目,因為使用瀏覽器定義檔取代了 browserCaps 項目,以指定支援的瀏覽器及其功能。 如需詳細資訊,請參閱瀏覽器定義檔結構描述 (browsers 項目)

在 .NET Framework 1.0 版和 1.1 版中,Machine.config 檔案中設定的預設 case 項目數量繁多,無法在此一一列出。 如需瀏覽器資料的更新,請移至 http://www.cyscape.com/browsercaps。 定期的裝置更新會取代此瀏覽器功能區段。

範例

下列程式碼範例中,會示範如何剖析任一版本 Microsoft Internet Explorer 的 User-Agent HTTP 標頭,只要 User-Agent 字串的格式大約維持不變。

該範例使用 .NET Framework 規則運算式和規則運算式的功能擷取子運算式,將版本號碼直接從 User-Agent 字串移至 browserCaps 項目。

這個檔案以指派陳述式的形式來指定名稱/值組,這類似於 Microsoft Internet Information Services (IIS) browscap.ini 檔案。 例如,"browser=IE" 這一行會將瀏覽器欄位的值設定為字串 "IE"。

<configuration>
   <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>
</configuration>

項目資訊

組態區段處理常式

HttpCapabilitiesSectionHandler

組態成員

Browsers

可設定的位置

Machine.config

根層次的 Web.config

應用程式層級的 Web.config

虛擬或實體目錄層級的 Web.config

需求

Microsoft Internet Information Services (IIS) 5.0、5.1 或 6.0 版

.NET Framework 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

參考

browserCaps 的 filter 項目 (ASP.NET 設定結構描述)

browserCaps 項目 (ASP.NET 設定結構描述)

system.web 項目 (ASP.NET 設定結構描述)

configuration 項目 (一般設定結構描述)

browserCaps 的 result 項目 (ASP.NET 設定結構描述)

browserCaps 的 use 項目 (ASP.NET 設定結構描述)

瀏覽器定義檔結構描述 (browsers 項目)

System.Configuration

System.Web.Configuration

HttpCapabilitiesSectionHandler

Browsers

概念

ASP.NET Server Controls and Browser Capabilities

ASP.NET Configuration File Hierarchy

Securing Configuration

Configuration Inheritance

其他資源

一般組態設定 (ASP.NET)

ASP.NET 組態設定

Configuring ASP.NET Applications

ASP.NET Configuration API