DefaultContentNegotiator Třída

Definice

Třída, která vybere System.Net.Http.Formatting.MediaTypeFormatter pro HttpRequestMessage nebo HttpResponseMessage .

public ref class DefaultContentNegotiator : System::Net::Http::Formatting::IContentNegotiator
public class DefaultContentNegotiator : System.Net.Http.Formatting.IContentNegotiator
type DefaultContentNegotiator = class
    interface IContentNegotiator
Public Class DefaultContentNegotiator
Implements IContentNegotiator
Dědičnost
DefaultContentNegotiator
Implementuje

Konstruktory

DefaultContentNegotiator()
DefaultContentNegotiator(Boolean)

Inicializuje novou instanci DefaultContentNegotiator s daným nastavením pro excludeMatchOnTypeOnly .

Vlastnosti

ExcludeMatchOnTypeOnly

Pokud má ExcludeMatchOnTypeOnly hodnotu true, nesouhlasíme jenom s typem, což znamená, že pokud se nemůžeme na cokoli v žádosti shodovat, vrátíme hodnotu null. To je užitečné při generování stavových kódů 406 (nepřijatelných).

Metody

ComputeFormatterMatches(Type, HttpRequestMessage, IEnumerable<MediaTypeFormatter>)

Určete, jak dobře má každý formátovací modul odpovídat přidružení MediaTypeFormatterMatchRanking hodnoty ke formátovacímu modulu. Pak přidružte kvalitu shody na základě faktorů q-a dalších parametrů. Výsledkem této metody je kolekce nalezených shod a přiřazená hodnota kvality.

MatchAcceptHeader(IEnumerable<MediaTypeWithQualityHeaderValue>, MediaTypeFormatter)

Porovná hodnoty polí záhlaví přijmout s registrovanými typy médií registrovanými formátovacím modulem.

MatchRequestMediaType(HttpRequestMessage, MediaTypeFormatter)

Odpovídá jakémukoli typu média požadavku (Pokud je v případě, že existuje tělo entity požadavku) proti zaregistrovaným typům médií pro formátovací modul.

MatchType(Type, MediaTypeFormatter)

Vyberte první podporovaný typ média a uveďte, že jsme se shodovali jenom s typem.

Negotiate(Type, HttpRequestMessage, IEnumerable<MediaTypeFormatter>)

Provede vyjednávání obsahu tím System.Net.Http.Formatting.MediaTypeFormatter , že vybere nejvhodnější z předaného formatters pro daný request objekt, který může serializovat objekt daného objektu type .

SelectResponseCharacterEncoding(HttpRequestMessage, MediaTypeFormatter)

Určete nejlepší kódování znaků pro zápis odpovědi. Nejdřív vyhledáme hlavičky Accept-Charset a pokud se nenaleznou, zkusíme v žádosti vyhledat jakékoli kódování charset (v případě PUT, POST atd.). Pokud se nenajde žádné kódování, použijeme pro formátovací modul výchozí.

SelectResponseMediaTypeFormatter(ICollection<MediaTypeFormatterMatch>)

Vyberte nejlepší shodu mezi nalezenými shodami kandidáty.

ShouldMatchOnType(IEnumerable<MediaTypeWithQualityHeaderValue>)

Určete, jestli se má shodovat s typem nebo ne. Tato možnost slouží k určení, zda se má generovat odpověď 406 nebo použít výchozí formátovací modul typu média pro případ, že se neshodují žádné požadavky v žádosti. Pokud má ExcludeMatchOnTypeOnly hodnotu true, nesouhlasíme s typem, pokud nejsou k dispozici žádné hlavičky Accept.

SortMediaTypeWithQualityHeaderValuesByQFactor(ICollection<MediaTypeWithQualityHeaderValue>)

Seřadit hodnoty hlaviček a související hodnoty polí hlaviček s podobnými pravidly syntaxe (Pokud je více než 1) v sestupném pořadí podle q-Factor.

SortStringWithQualityHeaderValuesByQFactor(ICollection<StringWithQualityHeaderValue>)

V sestupném pořadí založeném na q-Factor seřaďte hodnoty polí záhlaví Accept-Charset, Accept-Encoding, Accept-Language a související s podobnými syntaktickými pravidly (Pokud je více než 1).

UpdateBestMatch(MediaTypeFormatterMatch, MediaTypeFormatterMatch)

Vyhodnotí, jestli je shoda lepší než aktuální shoda, a pokud ano, vrátí se náhrada; v opačném případě vrátí aktuální shodu.

Platí pro