2011-11-15 42 views
3

我們獲得了一組要使用的ASMX服務。我們對這些服務如何實施沒有發言權。我們使用wsdl.exe工具生成了一些代理,但出於某種原因,我不知道這些生成的代理沒有任何方式來包含自定義SOAP頭。將SOAP頭添加到ASMX服務請求

基本上,我需要一種方法將自定義標題數據添加到各種服務調用。

我意識到SoapExtension類的存在,但不幸的是,由於性能問題,我們不允許使用它。

在SOAP請求中是否有其他自定義/添加標頭數據的方法?

回答

5

可以使用SoapHeader/SoapUnknownHeader延長此生成的代理:

編輯 - 按評論:

要一世排除自定義名稱空間,請參閱示例代碼here

+0

太棒了。使用SoapHeader屬性適用於我。你有什麼想法如何確保肥皂頭中的元素被賦予一個適當的自定義命名空間?我應該爲Namespace屬性使用[XmlType]屬性嗎? – Vex

+0

@Vex看到我的編輯上面 – Yahia

+0

太好了,謝謝! – Vex