HttpWebRequest.ContentLength-Eigenschaft

Ruft den Content-length-HTTP-Header ab oder legt diesen fest.

Namespace: System.Net
Assembly: System (in system.dll)

Syntax

'Declaration
Public Overrides Property ContentLength As Long
'Usage
Dim instance As HttpWebRequest
Dim value As Long

value = instance.ContentLength

instance.ContentLength = value
public override long ContentLength { get; set; }
public:
virtual property long long ContentLength {
    long long get () override;
    void set (long long value) override;
}
/** @property */
public long get_ContentLength ()

/** @property */
public void set_ContentLength (long value)
public override function get ContentLength () : long

public override function set ContentLength (value : long)

Eigenschaftenwert

Die Anzahl der Bytes der an die Internetressource zu sendenden Daten. Der Standardwert ist -1. Dieser Wert gibt an, dass die Eigenschaft nicht festgelegt wurde und keine zu sendenden Anforderungsdaten vorhanden sind.

Ausnahmen

Ausnahmetyp Bedingung

InvalidOperationException

Die Anforderung wurde durch Aufrufen der GetRequestStream-Methode, der BeginGetRequestStream-Methode, der GetResponse-Methode oder der BeginGetResponse-Methode gestartet.

ArgumentOutOfRangeException

Der neue ContentLength-Wert ist kleiner als 0.

Hinweise

Die ContentLength-Eigenschaft enthält den Wert, der als Content-length-HTTP-Header mit der Anforderung gesendet werden soll.

Durch einen anderen Wert als -1 in der ContentLength-Eigenschaft wird angegeben, dass die Anforderung Daten uploadet und in der Method-Eigenschaft nur Methoden festgelegt werden dürfen, die Daten uploaden.

Nachdem die ContentLength-Eigenschaft auf einen Wert festgelegt wurde, muss die entsprechende Anzahl von Bytes in den Anforderungsstream geschrieben werden, der durch den Aufruf der GetRequestStream-Methode oder durch den Aufruf sowohl der BeginGetRequestStream-Methode als auch der EndGetRequestStream-Methode zurückgegeben wird.

Hinweis

Der Wert für diese Eigenschaft wird in der WebHeaderCollection gespeichert. Wenn WebHeaderCollection festgelegt wird, geht der Eigenschaftenwert verloren.

Beispiel

Im folgenden Codebeispiel wird die ContentLength-Eigenschaft auf die Länge der gesendeten Zeichenfolge festgelegt.

' Set the 'Method' property of the 'Webrequest' to 'POST'.
myHttpWebRequest.Method = "POST"

Console.WriteLine(ControlChars.Cr + "Please enter the data to be posted to the (https://www.contoso.com/codesnippets/next.asp) Uri :")
' Create a new string object to POST data to the Url.
Dim inputData As String = Console.ReadLine()
Dim postData As String = "firstone" + ChrW(61) + inputData
Dim encoding As New ASCIIEncoding()
Dim byte1 As Byte() = encoding.GetBytes(postData)
' Set the content type of the data being posted.
myHttpWebRequest.ContentType = "application/x-www-form-urlencoded"
' Set the content length of the string being posted.
myHttpWebRequest.ContentLength = byte1.Length
Dim newStream As Stream = myHttpWebRequest.GetRequestStream()
newStream.Write(byte1, 0, byte1.Length)
Console.WriteLine("The value of 'ContentLength' property after sending the data is {0}", myHttpWebRequest.ContentLength)
newStream.Close()
// Set the 'Method' property of the 'Webrequest' to 'POST'.
myHttpWebRequest.Method = "POST";
Console.WriteLine ("\nPlease enter the data to be posted to the (https://www.contoso.com/codesnippets/next.asp) Uri :");

// Create a new string object to POST data to the Url.
string inputData = Console.ReadLine ();


string postData = "firstone=" + inputData;
ASCIIEncoding encoding = new ASCIIEncoding ();
byte[] byte1 = encoding.GetBytes (postData);

// Set the content type of the data being posted.
myHttpWebRequest.ContentType = "application/x-www-form-urlencoded";

// Set the content length of the string being posted.
myHttpWebRequest.ContentLength = byte1.Length;

Stream newStream = myHttpWebRequest.GetRequestStream ();

newStream.Write (byte1, 0, byte1.Length);
Console.WriteLine ("The value of 'ContentLength' property after sending the data is {0}", myHttpWebRequest.ContentLength);

// Close the Stream object.
newStream.Close ();
// Set the 'Method' property of the 'Webrequest' to 'POST'.
myHttpWebRequest->Method = "POST";
Console::WriteLine( "\nPlease enter the data to be posted to the (https://www.contoso.com/codesnippets/next.asp) Uri :" );

// Create a new String* Object* to POST data to the Url.
String^ inputData = Console::ReadLine();

String^ postData = String::Concat( "firstone= ", inputData );
ASCIIEncoding^ encoding = gcnew ASCIIEncoding;
array<Byte>^ byte1 = encoding->GetBytes( postData );

// Set the content type of the data being posted.
myHttpWebRequest->ContentType = "application/x-www-form-urlencoded";

// Set the content length of the String* being posted.
myHttpWebRequest->ContentLength = byte1->Length;

Stream^ newStream = myHttpWebRequest->GetRequestStream();

newStream->Write( byte1, 0, byte1->Length );
Console::WriteLine( "The value of 'ContentLength' property after sending the data is {0}", myHttpWebRequest->ContentLength );

// Close the Stream Object*.
newStream->Close();
// Set the 'Method' property of the 'Webrequest' to 'POST'.
myHttpWebRequest.set_Method("POST");
Console.WriteLine("\nPlease enter the data to be posted to the "
    + "(https://www.contoso.com/codesnippets/next.asp) Uri :");

// Create a new string object to POST data to the Url.
String inputData = Console.ReadLine();

String postData = "firstone=" + inputData;
ASCIIEncoding encoding = new ASCIIEncoding();
ubyte byte1[] = encoding.GetBytes(postData);

// Set the content type of the data being posted.
myHttpWebRequest.set_ContentType("application/x-www-form-"
    +"urlencoded");
// Set the content length of the string being posted.
myHttpWebRequest.set_ContentLength(postData.length());

Stream newStream = myHttpWebRequest.GetRequestStream();

newStream.Write(byte1, 0, byte1.length);
Console.WriteLine("The value of 'ContentLength' property after"
    + " sending the data is {0}", 
    System.Convert.ToString(myHttpWebRequest.get_ContentLength()));
// Close the Stream object.
newStream.Close();

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

HttpWebRequest-Klasse
HttpWebRequest-Member
System.Net-Namespace