ASP.NET MVC アプリケーションに取り組んでいます。RESTful リクエストを送信する必要があるサービスがあります。この特定のケースでは、POST を使用して XML をサービスに送信する必要があります。WCF は使用していません。
XML はXElement
オブジェクトにあります。元の XML には、文字エンコード情報が含まれています。XML をサービスに書き込むときに、文字エンコーディングを変更しないでおきたい。
次のようなコードを使用して、リクエスト ストリームへの参照を取得できます。
HttpWebRequest req = (HttpWebRequest) WebRequest.Create( url );
req.Method = "POST";
req.Timeout = 30000;
Stream requestStream = req.GetRequestStream();
私はこのコードを書きました:
using ( XmlWriter writer = new XmlTextWriter( requestStream, Encoding.UTF8 ) ) {
xml.WriteTo( writer );
}
ただし、これにより XML のエンコーディングが変更される場合があります。エンコーディングが変更されないことが重要です。のエンコーディングを返すプロパティまたはメソッドが見つからないようです。XElement.
に書き込み、既存の文字エンコーディングを保持するXElement
にはどうすればよいですか?requestStream