2012-10-17 24 views

回答

5

Steef -Jan威格斯回答過類似的問題here

TL; DR - 始終使用Generated Items wizard

我的10C - 雖然添加服務導入的xsd文件添加爲模式,並設置爲BtsCompile,有一定的侷限性,如:

  • 添加服務引用將添加客戶端代理,這ISN在BizTalk項目中並不需要它(這可能會誘使你的開發者做一些愚蠢的事情,比如使用自定義程序集中的代理)
  • 服務引用導致了複雜的WSDL導入(例如泛型或其他模式的依賴關係) ),見Considerations when consuming Web Services

使用Add Generated Items嚮導做額外的工作對您:

  • 再添一個端口類型用於訪問該服務,已經預先配置正確的消息類型。但請注意,它會將端口類型添加到虛擬.odx中 - 即,在您將端口類型移到其他地方之前,不要刪除該odx。
  • 允許您同時創建發送端口綁定。

有一件事我會與嚮導建議,是創建一個文件夾的WCF參考,並始終將所有工件導入文件夾(即不做架構的端口,從平時的分離和離開虛擬.odx在那裏)。這樣,如果需要重新生成項目,只需刪除文件夾中的所有內容並重新開始(可惜,嚮導沒有Update Service Reference等效項。

另請注意,如果您確實將生成的模式和端口類型到一個單獨的程序集中,您需要將類型修飾符的訪問權限更改爲Public(默認爲內部)