我正在創建WCF服務來接收消息(字符串)。它有soap請求,如下所示。我通過互聯網找到了很多例子,但我無法徹底理解這些例子。在WCF服務中處理自定義soap頭文件
我發現這篇文章是非常有幫助的,但仍然不能使它工作 http://weblogs.asp.net/paolopia/handling-custom-soap-headers-via-wcf-behaviors
閱讀一些文章之後,我才知道,我需要處理以下區域(一)SOAP頭(B )消息檢查(C)客戶端上下文和(d)服務器環境類
- 如何處理的mustUnderstand頭
- 我需要捕捉值傳遞
messageid
,ReplyTo
,To
,From
,Action
以下的SOAP消息需要如果要創建一個WCF服務,你要消耗
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
<soapenv:Header>
<a:Action s:mustUnderstand="1">urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-b</a:Action>
<a:From><a:Address>urn:oid:1.2.3.4.5.6.1234567.10.70.142.2</a:Address>
</a:From>
<a:MessageID>urn:uuid:3a40ebfe-2abc-4de9-b6f6-06c7962f6050</a:MessageID>
<a:ReplyTo>
<a:Address>http://www.w3.org/2005/08/addressing/anonymous</a:Address>
</a:ReplyTo>
<a:To>https://localhost/MyWCFService/Service.asmx</a:To>
</soapenv:Header>
...
如果你能攔截消息作爲'Message'對象,你可以閱讀'Header'財產。在這種情況下使用'IDispatchMessageInspector'。 –
@AmitKumarGhosh示例代碼將有所幫助 – Shai
嗨shai。爲什麼你需要自定義行爲。您是否希望在每個請求的應用程序中進行任何日誌記錄或審計? –