2
Visual Studio 2008でプロジェクトを行い、Monodevelop 2.4.2およびモノ2.10.2のLinuxでビルドしました。モノ:WebサービスでXMLにUTF-8 BOMが追加されています
モノラルバージョンによって生成された出力SOAPは、以下の例外を生成し、サーバによって処理することができないUTF-8 BOM(EFのBBのBF)ヘッダを含むされる:どのようにすることができ
"Couldn't create SOAP message due to exception: XML reader error: com.sun.xml.stream.XMLStreamException2: ParseError at [row,col]:[1,1]
Message: Content is not allowed in prolog."
をモノ自動生成WebサービスクライアントにこのBOMを含まないよう指示しますか?
Wiresharkのスニフ:
000000B5 ef bb bf 3c 3f 78 6d 6c 20 76 65 72 73 69 6f 6e ...<?xml version
000000C5 3d 22 31 2e 30 22 20 65 6e 63 6f 64 69 6e 67 3d ="1.0" e ncoding=
000000D5 22 75 74 66 2d 38 22 3f 3e 3c 73 3a 45 6e 76 65 "utf-8"? ><s:Enve
説明を少し追加する必要があります –
'as '演算子の代わりに' BasicHttpBinding'に明示的キャストを使うべきです。何か問題が起これば 'ObjectNullReference'例外が発生しますが、明示的キャスティングは' BasicHttpBinding'にキャストできないという手がかりを与えます。したがって、 '((BasicHttpBinding)client.Endpoint.Binding).TextEncoding'を使用してください。 – Artemix