Compartilhar via


Recomendações de filtragem de dispositivo

Este tópico descreve como criar com base em comparação e filtros para controles móveis do ASP.NET de delegado de avaliador.Filtros de dispositivo oferecem um mecanismo para a criação de chamado critérios que você pode usar para especificar propriedades de dispositivos móveis ou dispositivos.Esses filtros são armazenados na <devicefilters> seção o arquivo Web.config.

Cada dispositivo de filtro corresponde a um ou mais tipos de dispositivos e um único dispositivo pode combinar vários filtros.Por exemplo, um Pocket PC pode fazer a correspondência entre o filtro IsColor sistema autônomo um dispositivo de cor IsPDA sistema autônomo um PDA, e IsHTML32 sistema autônomo um navegador baseado em HTML.

Para cada filtro, você adicionar um <filter> elemento o <deviceFilters> seção o arquivo Web.config.

Você pode especificar filtros baseados em comparação e filtros com base em avaliador-delegado.

Comparação com filtros

Filtros baseados em comparação comparam um MobileCapabilities valor da propriedade contra um argumento. A sintaxe de um filtro de comparação é sistema autônomo segue:

<filter
    name="nameofFilter"
    compare="propertyName"
    argument="filterargument" />

Em um filtro com base em comparação, a <filter> elemento possui três propriedades:

  • The name atributo, que é o nome do filtro.

  • The compare atributo, que contém a propriedade que avalia o filtro.

  • The argument attribute, which is the argument against which the propertyNamevalue is compared.Se nenhum argumento for fornecido, null é usado para comparação.

No exemplo a seguir, se o PreferredRenderingType o valor é wml11, corresponde ao filtro.

<filter
    name="isWML11"
    compare="PreferredRenderingType"
    argument="wml11" />

Quando o filtro é usado em um <choice> elemento e a correspondência no filtro for bem-sucedida, ASP.NET seleciona o conteúdo específico de dispositivo que está contido nos modelos dentro de <Choice> elemento.

Avaliador de delegado com filtros

Filtros com base em avaliador-delegado retornam true ou false um método personalizado. O método calcula o valor de retorno em qualquer uma das propriedades no MobileCapabilities classe. O valor retornado é usado para determinar se coincide com o filtro.

A sintaxe para um filtro com base em avaliador-delegado é da seguinte maneira:

<filter
    name="nameOfFilter"
    type="className"
    method="methodName" />

Em um filtro com base em avaliador-delegado, há três propriedades:

  • The name atributo, que é o nome do filtro.

  • The type atributo, que é o tipo de classe que fornece o delegado de avaliador. O nome deve ser totalmente qualificado.ASP.NET pesquisa o assembly especificado para o tipo.

  • The method atributo, que é o nome de um método na Type classe. O método retorna um valor booliano que indica se o dispositivo corrente satisfaz a esse filtro com base na MobileCapabilities instância passado para ele.

No exemplo a seguir, se o IsGPSEnabled método retorna true, corresponde ao filtro.

<filter
    name="GPSEnabled"
    type="MyApplication.MyCapabilityEvaluators,MyAssembly"
    method="IsGPSEnabled"/>

O exemplo a seguir é uma declaração de esqueleto para o IsGPSEnabled método.

namespace MyApplication
{
    public class MyCapabilityEvaluators
    {
        public static bool IsGPSEnabled(
            System.Web.Mobile.MobileCapabilities capabilities,
            String unusedArg)
        {
            // Any necessary proccessing goes here.
        }
    }
}

Adicione suporte para um filtro adicionando uma linha a <deviceFilters> seção da Web. arquivo de configuração. Por exemplo, se você compilou o filtro anterior em um assembly chamado MyApplication.dll, adicione a seguinte linha ao arquivo Web.config:

<filter name="IsGPSEnabled"
   type="MyApplication.MyCapabilityEvaluators,MyApplication"
   method="IsGPSEnabled" />

Consulte também

Conceitos

Recursos do navegador estendido

renderização específico do dispositivo

Referência

Elemento <filter>