2012-11-19 72 views

回答

1

您可以手動創建數據合同,只包含你感興趣的操作界面,然後使用該接口與ChannelFactory創建一個基本的客戶端將只針對那些操作,或...

。 ..您也可以從所有不需要的操作和元素中提取WSDL,並將結果提供給svcutil.exe以創建更簡單的客戶端。一種更安全的方法是將大型WSDL提供給svcutil.exe,並從生成的代碼中去除不需要的東西(因爲編譯器會在您刪除不應該刪除的東西時立即通知您,所以更安全)。

無論哪種方式,我認爲你將不得不進行一些手動干預。

1

svcutil有一個/excludeType標誌。它可以在元數據導出和類型生成期間使用。

從SvcUtil工具命令行幫助:

/excludeType: - 完全限定或程序集限定的類型名稱 從出口或驗證中排除。當 將服務的元數據或一組服務合同導出爲 時,可以使用此選項排除導出的類型。該選項不能與 /dataContractOnly選項一起使用。 (簡寫:/ et)

How do I export metadata for a single contract with svcutil.exe?的回答使用它來解決一個類似的問題。

我希望類型過濾適用於您,因爲我不知道通過方法執行此操作的「外框」方式。