MessageEncoder.IsContentTypeSupported(String) メソッド

定義

指定したメッセージ レベルのコンテンツ タイプ値をメッセージ エンコーダーがサポートするかどうかを示す値を返します。

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

パラメーター

contentType
String

検査するメッセージ レベルのコンテンツ タイプ。

戻り値

Boolean

指定したメッセージ レベルのコンテンツ タイプがサポートされる場合は true。それ以外の場合は false

次のコード例は、同じメディア タイプを使用して別のコンテンツ タイプを処理するようにこのメソッドをオーバーライドする方法を示しています。

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;
        }
    }
}

注釈

このメソッドは、コンテンツ タイプに基づく特定のスタイルのメッセージを読み込むためにメッセージ エンコーダーを使用できるかどうかを判断するために使用します。 ContentType クラスの情報は、メッセージに含まれるデータを記述するため、およびコンテンツ タイプが一致するかどうかを判断するために使用されます。

コンテンツ タイプ ヘッダーの構文を詳しく説明する文法については、 RFC 2045 セクション 5.1 を参照してください。 RFC 2046 では、多目的インターネット メール拡張機能 (MIME) メディアの種類とそのパラメーターに関する詳細情報が提供されます。

適用対象