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 del mensaje admite el valor especificado para el tipo de contenido de nivel de mensaje.
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
El tipo de contenido del nivel de mensaje que se está probando.
Devoluciones
true
si se admite el tipo de contenido especificado del nivel de mensaje; de lo contrario, false
.
Ejemplos
El ejemplo de código siguiente muestra cómo invalidar este método para administrar los tipos de contenido diferentes 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 utiliza para determinar si el codificador del mensaje se puede utilizar para leer un estilo determinado de mensaje, basado en su tipo de contenido. La información de la clase ContentType se utiliza para describir los datos que contiene un mensaje y para determinar si hay una coincidencia del 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 de medios Multipurpose Internet Mail Extensions (MIME) y sus parámetros.