HttpRequestHeaderCollection.TransferEncoding 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得 HttpTransferCodingHeaderValueCollection 的 HttpTransferCodingHeaderValue 物件,這些物件代表 HTTP 要求上 Transfer-Encoding HTTP 標頭的值。
public:
property HttpTransferCodingHeaderValueCollection ^ TransferEncoding { HttpTransferCodingHeaderValueCollection ^ get(); };
HttpTransferCodingHeaderValueCollection TransferEncoding();
public HttpTransferCodingHeaderValueCollection TransferEncoding { get; }
var httpTransferCodingHeaderValueCollection = httpRequestHeaderCollection.transferEncoding;
Public ReadOnly Property TransferEncoding As HttpTransferCodingHeaderValueCollection
屬性值
HttpTransferCodingHeaderValue物件的集合,代表 HTTP 要求上Transfer-Encoding HTTP 標頭的值。 空集合表示標頭不存在。
備註
即使HttpTransferCodingHeaderValue 物件的 HttpTransferCodingHeaderValueCollection支援設定其他值,HttpClient所支援的唯一傳輸編碼值也會進行區塊化。
如果 HttpRequestMessage 是以沒有指定內容長度的 ,或在 HttpClient 上使用 方法或 HTTP 內容類別別上的其中一個方法,則不需要手動將傳輸編碼值設定為區塊化。
下列範例程式碼示範在HttpRequestMessage物件上使用 TransferEncoding 屬性在HttpRequestHeaderCollection物件上設定Transfer-Encoding標頭的方法。
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());
}