Elemento <case>

Consente l'interruzione dei criteri di ricerca dopo l'elaborazione della prima corrispondenza riuscita tra diverse alternative.

<configuration>
   <system.web>
      <browserCaps>
         <filter>
**            <case>**

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

Attributi obbligatori

Attributo Descrizione
match Espressione regolare di .NET Framework sottoposta a verifica a fronte dell'attributo with. Se omesso, la corrispondenza verrà considerata valida.
with Espressione regolare di .NET Framework o stringa da ricercare. Se omesso, viene utilizzata la stringa specificata dall'elemento <use>.

Esempio

Nell'esempio che segue viene illustrata l'analisi dell'intestazione HTTP User-Agent per qualsiasi versione di Internet Explorer (nella misura in cui il formato della stringa User-Agent resta quasi del tutto invariato).

Nell'esempio vengono utilizzate le espressioni regolari di .NET Framework e la relativa funzionalità di acquisizione di espressioni secondarie per spostare i numeri di versione direttamente dalla stringa User-Agent all'oggetto browserCaps.

Nel file le coppie nome/valore vengono specificate sotto forma di istruzioni di assegnazione, in modo analogo a quanto accade nei file browscap.ini di Microsoft Internet Information Services (IIS). La riga "browser=IE" imposta, ad esempio, il valore del campo browser sulla stringa "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>

Osservazioni

Gli elementi <filter> e <case> possono contenere assegnazioni e altri elementi <filter> e <case>. La differenza tra i gruppi <case> e <filter> consiste nel fatto che al termine della valutazione di un gruppo <filter>, l'esecuzione continua con l'istruzione che segue il gruppo, mentre dopo la valutazione e l'individuazione di una corrispondenza per il gruppo <case>, l'esecuzione passa direttamente alla fine del gruppo di inclusione.

Requisiti

Contenuto in: <system.web>

Piattaforma Web: IIS 5.0, IIS 5.1, IIS 6.0

File di configurazione: Machine.config, Web.config

Gestore della sezione di configurazione: System.Web.Configuration.HttpCapabilitiesSectionHandler

Vedere anche

Elemento <browserCaps> | Elemento <filter> | Configurazione ASP.NET | Schema delle impostazioni ASP.NET