2009-06-25 10 views
2

私は別のHTTPコンテナ(ServiceHost、IISなど)を追加することはできませんが、依然としてWCF WebサービスでSOAPリクエスト(文字列として表される)を処理する必要がある環境があります。その方法においてHTTPコンテナなしでWCF操作を呼び出すにはどうすればよいですか?

string processSoapMessage(string req); 

は、私は手動で入力された文字列で動作するXMLリーダーでSystem.ServiceModel.Channels.Messageインスタンスを作成します。私のような単純なラッパー・メソッド(C#)を書き込むように期待していました。私は、結果のMessageインスタンスを処理するChannelDispatcherを作成して手動ディスパッチコードを書くことを避けたいと考えていましたが、ChannelDispatcherは特定のServiceHostに縛られているようです。ホスティングコンテナを作成せずにこれを達成するために呼び出すことができるディスパッチコードがありますか?

+1

処理するSOAP要求はどこから来ていますか? –

+0

私はシラーズと一緒に行く予定です。まだ開いている港がない場合は、どこから石けんがありますか? –

+0

話をしなければならないウェブサービスは同じマシンにありますか? –

答えて

0

サービスクラスをホストするServiceHostを作成して開く簡単なコンソールアプリケーションを作成することはできません。

マルク・

+0

オープンポートを必要とするものは禁止されていますが、名前付きパイプエンドポイントを使用できる可能性があります。私はそれを試みるつもりです。 – Dan

+0

ポート80を使用することはできませんか? –

1

と仮定すると、すべてが、その後結合Named Pipeを使用して、同じマシン上で起こっていることは、おそらくあなたの最善の策です。

-1

何をしても、System.Stringタイプを使用してXMLを保持しないでください。 XmlReaderまたはXmlDocumentなどを渡します。常にXML APIを使用してXMLを操作します。

+0

Downvoter:ハァッ? XMLを文字列として扱うのは良い計画だと思いますか? –

関連する問題