私は WCF は初めてですが、C# と .Net は初めてではありません。Visual Studio 2008 と .Net 3.5 を使用しています。
着信要求 XML と名前空間を受信できる Web サービスを構築しようとしています。透過的な受信者のように動作し、インバウンド要求 XML を単純に取り込みます。
要求を受け取ったら、それをカスタム .Net C# プロジェクトに渡して、MQPUT を IBM MQ Series に呼び出します。
現在、RunTest() と呼ばれる一般的なインバウンド操作を受け取る WCF Web サービス アプリケーションがあります。WSDL を SoapUI で使用し、サンプル リクエストとブレークポイントを作成すると、機能します。しかし、会社の要求 XML を渡そうとすると、ブレークポイントに到達しません。
ServiceContract と Operation は次のとおりです。
[ServiceContract(Name="IService1",Namespace="cfg-env=http://www.co.com/schemas/cfg- env/")]
//[ServiceContract]
public interface IService1
{
[OperationContract]
void RunTest();
[OperationContract]
void CFX();
操作方法は次のとおりです。
public void RunTest()
{ <<<it does break here using the request from the WSDL
string serviceName;
string queueManager;
string queue;
string requestMessage;
//Capture the Service Name
serviceName = "";
//Save the QueueManager
queueManager = "";
//Save the Request Queue
queue = "";
//Save the Message
requestMessage = "";
//Call MQ Put
Engine eng = new Engine();
try
{
eng.Put(serviceName, queue, requestMessage, queueManager);
}
主に行う必要があるのは、インバウンド XML を受信し、いくつかの情報について問い合わせ、このメソッドを呼び出して MQ で MQPUT 関数を実行することです。
インバウンドの名前空間は上記のようになりますが、名前空間で修飾されている可能性のある XPATH を受信して問い合わせることができるようにしたいと考えています。私たちのサービスはそれを標準として使用しているため、必要に応じて cfg-env 名前空間プレフィックスを排他的に使用できます。
VS 2008 WCF でこれを行う際の主なハードルは何ですか? リンクをお持ちの場合は、可能であれば一緒にお送りください。