Ich habe eine Portable Class Library, die auf ".NET für Windows Store-Apps" und "Windows Phone 7.5 oder höher" abzielt. Ich mache HTTP-POST-Anfragen und seit letzter Woche haben die Admins, die für das Back-End zuständig sind, entschieden, dass ich eine ContentLength von 0 senden muss, im Gegensatz zu -1, die standardmäßig von .NET ist. Ich benutze die WebRequest-Klasse, aber ich bin flexibel genug, um HttpWebRequest bei Bedarf zu verwenden.
Normalerweise würde ich einfach WebRequest.Create verwenden und die ContentLength-Eigenschaft festlegen. In der PCL-Bibliothek ist die ContentLength-Eigenschaft nicht verfügbar. Wenn ich versuche, einen Header mit einem Schlüssel von "Content-Length" hinzuzufügen, beschwert sich das Framework, dass ich nur die ContentLength-Eigenschaft verwenden sollte.
Irgendwelche Ideen, wie ich die ContentLength in einer PCL einstellen kann?
Wenn Sie die Eigenschaft ContentLength
nicht setzen können, aber auf 0 gesetzt werden, können Sie versuchen, GetRequestStream
(oder BeginGetRequestStram
gefolgt von EndGetRequestStream
) aufzurufen, ohne etwas in die Stream
selbst zu schreiben. Dies sollte die Eigenschaft ContentLength
auf ihren tatsächlichen Wert aktualisieren (0, weil nichts geschrieben wurde).
Tags und Links .net c# httpwebrequest portable-class-library webrequest