我們必須將我們的項目與後端Oracle平臺集成。這個集成通過各種Web服務。我擁有所有這些集成的所有WSDL和XSD。我需要從這些WSDL產生DataContracts XSDs。
現在的問題是,大多數這些集成共享一些常見的數據類型。我想重複使用它們。
e.g,使用XSD中的確切名稱空間生成DataContracts
Integration1: oracle/common/commonDataTypes.xsd oracle/integration1/someXSD.xsd oracle/ebo/baseTypes.xsd Integration2: oracle/common/commonDataTypes.xsd oracle/integration2/someXSD.xsd oracle/ebo/baseTypes.xsd Integration3: oracle/commonDataTypes.xsd oracle/integration2/someXSD.xsd oracle/ebo/baseTypes.xsd
在這種情況下,我想重用到目前爲止,我已經試過WSCF.blue & WSCF integration1 &之間2.
的oracle.common.CommonDataTypes。但是這些工具會在單個文件夾(和單個命名空間)中生成所有代碼,而不是遵循命名空間。
我想要在名稱空間下生成類,如oracle,oracle.commonData,oracle.integration1,oracle.ebo等 所以生成Datacontracts的任何方式都遵循XSD具有的確切名稱空間表示法?
/r在svcutil中的標誌對我很有用。但是,對於每個集成,大約有500個類正在生成。所以我不可能手動更改這些類。另外,不建議修改自動生成的類。 – 2011-05-19 00:24:17
我同意如果源協議經常更改,修改生成的文件並不明智。但是,當你調用Oracle服務時,我不認爲情況會如此。所以這樣做是安全的。這是一次性練習,雖然它可能很耗時,但一旦完成,它就完成了。我不知道還有什麼其他的解決方案。 – 2011-05-20 15:06:07