Compartilhar via


HttpRequestHeaderCollection.TransferEncoding Propriedade

Definição

Obtém os objetos HttpTransferCodingHeaderValueCollection de objetos HttpTransferCodingHeaderValue que representam o valor de um cabeçalho HTTP Transfer-Encoding em uma solicitação HTTP.

public:
 property HttpTransferCodingHeaderValueCollection ^ TransferEncoding { HttpTransferCodingHeaderValueCollection ^ get(); };
HttpTransferCodingHeaderValueCollection TransferEncoding();
public HttpTransferCodingHeaderValueCollection TransferEncoding { get; }
var httpTransferCodingHeaderValueCollection = httpRequestHeaderCollection.transferEncoding;
Public ReadOnly Property TransferEncoding As HttpTransferCodingHeaderValueCollection

Valor da propriedade

A coleção de objetos HttpTransferCodingHeaderValue que representam o valor de um cabeçalho HTTP Transfer-Encoding em uma solicitação HTTP. Uma coleção vazia significa que o cabeçalho está ausente.

Comentários

O único valor de codificação de transferência com suporte por HttpClient é agrupado, embora o HttpTransferCodingHeaderValueCollection de objetos HttpTransferCodingHeaderValue dê suporte à configuração de outros valores.

Não é necessário definir o valor de codificação de transferência manualmente como agrupado se o HttpRequestMessage for enviado como um sem comprimento de conteúdo especificado ou disponível usando o método em HttpClient ou um dos métodos nas classes de conteúdo HTTP.

O código de exemplo a seguir mostra um método para definir o cabeçalho Transfer-Encoding em um objeto HttpRequestMessage usando a propriedade TransferEncoding no objeto HttpRequestHeaderCollection .

void DemoTransferEncoding(HttpRequestMessage m) {
    var h = m.Headers;

    uiLog.Text += "\nTRANSFERENCODING HEADER\n";
    // Transfer-Encoding: chunked
    var okTryParseAdd = h.TransferEncoding.TryParseAdd("chunked");
    okTryParseAdd = h.TransferEncoding.TryParseAdd("mini; a=b; c=d; e=f");
    h.TransferEncoding.Add(new HttpTransferCodingHeaderValue("cab"));
    h.TransferEncoding.TryParseAdd("newtype, othernewtype");

    // TransferEncoding is a HttpTransferCodingHeaderValueCollection
    // A collection of HttpTransferCodingHeaderValue

    // HttpTransferCodingHeaderValue has three items:
    // Value (string); for example, "compress"
    // Parameter (IList<HttpNameValueHeaderValue>)
    //

    foreach (var item in h.TransferEncoding) {
        // item has: Value (string), Parameter IList<HttpNameValueHeaderValue>
        var parameterString = "";
        foreach (var parameter in item.Parameters) {
            parameterString += string.Format("[{0}={1}] ", parameter.Name, parameter.Value);
        }
        if (parameterString == "") {
            parameterString = "(no parameters)";
        } 
        uiLog.Text += string.Format("Value: {0} Parameters: {1} ToString: {2}\n", item.Value, parameterString, item.ToString());
    }
    uiLog.Text += string.Format("TransferEncoding: ToString: {0}\n\n", h.TransferEncoding.ToString());
}

Aplica-se a

Confira também