MessageEncoder.IsContentTypeSupported(String) Método

Definição

Retorna um valor que indica se um valor de tipo de conteúdo de nível de mensagem especificado tem suporte no codificador de mensagem.

public:
 virtual bool IsContentTypeSupported(System::String ^ contentType);
public virtual bool IsContentTypeSupported (string contentType);
abstract member IsContentTypeSupported : string -> bool
override this.IsContentTypeSupported : string -> bool
Public Overridable Function IsContentTypeSupported (contentType As String) As Boolean

Parâmetros

contentType
String

O tipo de conteúdo em nível de mensagem sendo testado.

Retornos

true se houver suporte para o tipo de conteúdo no nível de mensagem especificado; caso contrário, false.

Exemplos

O exemplo de código a seguir mostra como substituir esse método para lidar com tipos de conteúdo diferentes com o mesmo tipo de mídia.

public override bool IsContentTypeSupported(string contentType)
{
    if (base.IsContentTypeSupported(contentType))
    {
        return true;
    }
    if (contentType.Length == this.MediaType.Length)
    {
        return contentType.Equals(this.MediaType, StringComparison.OrdinalIgnoreCase);
    }
    else
    {
        if (contentType.StartsWith(this.MediaType, StringComparison.OrdinalIgnoreCase)
            && (contentType[this.MediaType.Length] == ';'))
        {
            return true;
        }
    }
    return false;
}
public class CustomTextMessageEncoderFactory : MessageEncoderFactory
{
    private MessageEncoder encoder;
    private MessageVersion version;
    private string mediaType;
    private string charSet;

    internal CustomTextMessageEncoderFactory(string mediaType, string charSet,
        MessageVersion version)
    {
        this.version = version;
        this.mediaType = mediaType;
        this.charSet = charSet;
        this.encoder = new CustomTextMessageEncoder(this);
    }

    public override MessageEncoder Encoder
    {
        get
        {
            return this.encoder;
        }
    }

    public override MessageVersion MessageVersion
    {
        get
        {
            return this.version;
        }
    }

    internal string MediaType
    {
        get
        {
            return this.mediaType;
        }
    }

    internal string CharSet
    {
        get
        {
            return this.charSet;
        }
    }
}

Comentários

Esse método é usado para determinar se o codificador de mensagens pode ser usado para ler um estilo específico de mensagem, com base em seu tipo de conteúdo. As informações na ContentType classe são usadas para descrever os dados contidos em uma mensagem e são usadas para determinar se há uma correspondência de tipo de conteúdo.

Uma gramática que detalha a sintaxe do cabeçalho de tipo de conteúdo é descrita na Seção 5.1 do RFC 2045 . O RFC 2046 fornece informações detalhadas sobre os tipos de mídia MIME (Multipurpose Internet Mail Extensions) e seus parâmetros.

Aplica-se a