MessageEncoder.IsContentTypeSupported(String) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve un valor que indica si el codificador de mensajes admite un valor de tipo de contenido de nivel de mensaje especificado.
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
Tipo de contenido de nivel de mensaje que se está probando.
Devoluciones
true si se admite el tipo de contenido de nivel de mensaje especificado; de lo contrario false, es .
Ejemplos
En el ejemplo de código siguiente se muestra cómo invalidar este método para controlar diferentes tipos de contenido con el mismo tipo de medio.
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;
}
}
}
Comentarios
Este método se usa para determinar si el codificador de mensajes se puede usar para leer un estilo determinado de mensaje, en función de su tipo de contenido. La información de la ContentType clase se usa para describir los datos contenidos en un mensaje y se usa para determinar si hay una coincidencia de tipo de contenido.
Una gramática que detalla la sintaxis del encabezado content-type se describe en RFC 2045 Section 5.1. RFC 2046 proporciona información detallada sobre los tipos multimedia multipropósito de extensiones de correo de Internet (MIME) y sus parámetros.