xmlファイルをwcfサービスに送信したいのですが、どうすれば送信できますか? データ契約またはメッセージ契約はありますか? 助けてください。WCF DataContracts/MessageContracts経由でXMLファイルを送信するには?
答えて
あなたはこのような何かを行うことができます。
var doc = new XmlDocument();
doc.LoadXml(xmlContent);
var message = Message.CreateMessage(MessageVersion.Soap11, "urn:someRequest", new XmlNodeReader(doc));
var factory = new ChannelFactory<IRequestChannel>("serviceHttpSoap11Endpoint");
var channel = factory.CreateChannel();
var response = channel.Request(message);
channel.Close();
だから、まずあなたは、あなたがそれを送信するために上記のサンプルを適応させる、XmlDocumentオブジェクトにXMLファイルをロードします。
私はしばらく前にそのことについて記事を書いた:http://www.pvle.be/2009/02/send-xmldocument-using-windows-communication-foundation/
DataContractは、ワイヤを経由するXMLのC#表現を定義します。
基本的に、XMLがどのように見えるかを記述するDataContractであるC#クラスが必要です。クライアントとサーバーでは、生のXMLではなく、C#クラスを操作します。 DataContractがXML形式に整列している場合は、生のXMLをDataContractクラスのクラスインスタンスに逆シリアル化できます。
また、DataContractに文字列フィールドを追加し、そこに生のXMLをパッケージ化して送信することもできます。その場合、あなたは、クライアントとサーバー側で生のXMLの両方で対処する必要がある - -
あなたが持っている最後の選択肢は、WCFの契約のための基本的な、型なしMessage
タイプを使用しているではない、かなりすべてで、しかし、あなたの場合本当にしたいです - それはあなた次第です。
MSDN documentation on raw messagesを参照し、Kurt Claeysのblog postをご覧ください。
マルク・
それはmarc_s'アドバイスに従うと、高レベルのデータ契約に固執するのがベストですが、任意のXMLを送信するために、時々必要です。これを行うには、OperationContractにXmlElementパラメーターを追加します。
これを行うには、Data Contractシリアライザの代わりにXmlSerializerを使用する必要があります。サービスコントラクトで[XmlSerializerFormat]属性を使用する必要があります。
- 1. WCF経由でXMLを送信していますか?
- 2. WCF経由でXMLを送信する際に問題がありますか?
- 3. ストリーム経由でファイルを送信する
- 4. Laravel:Ajax経由でファイルを送信する
- 5. IpV6経由でファイルを送信する
- 6. ソケット経由でファイルを送信する
- 7. 送信xsd WCF経由の日付
- 8. C#からWCF経由でC++にコマンドを送信する
- 9. WCFサービス* .xmlファイルを送信するテストツール
- 10. WCF経由でバイナリデータを送信する:バイナリとMTOMのエンコーディング
- 11. Resttemplate経由でスプリングレストサービス経由でファイルを送信
- 12. android adbシェルでFTP経由でファイルを送信するには?
- 13. PSSession経由でファイルを送信
- 14. SMS経由で.mobileconfigファイルを送信OTA
- 15. Outlook経由でHTMLファイルを送信
- 16. ソケット経由でwavファイルを送信
- 17. WCF経由でNLogログをサーバーに送信
- 18. PHP経由でURLにxmlファイルを送信する最善の方法
- 19. Mattermost incoming webhook経由でファイルを送信するには?
- 20. androidからXML経由で画像を送信する
- 21. telnetとソケット経由でxmlを送信する際の問題
- 22. HTTP経由でXMLを送信する際の問題
- 23. Android、HTTP経由でサーバーにXML文字列を送信
- 24. HTTPS経由でHTTP経由でクッキーを送信する
- 25. vfs経由でWindows共有にファイルを送信する
- 26. SFTP経由でDockerコンテナにファイルを送信する
- 27. Bluetooth経由で他のiPhoneにファイルを送信する方法
- 28. 3G経由のゲームセンター(GameKit)経由でデータを送受信する
- 29. シリアルポート経由でデータを送信する
- 30. ネットワーク経由でオブジェクトを送信する
@Praveen:どのようにこの問題にやっていますか?それでも問題が解決しない場合は、送信したいXMLファイルの種類を教えてください。 –