我目前正在用C#.NET開發一個WCF Web服務。我對此很新。我正在考慮如何實現某種方法,因爲它需要將「外部」對象作爲DataContract返回。我不確定這是如何工作的。爲外部對象創建一個DataContract
我的Web服務實現了另一個第三方Web服務。原因是因爲我們不允許向公衆公開所有方法和數據。所以我們正在設計一個Web服務,去除第三方Web服務公開的某些數據和方法。
第三方Web服務公開這樣的方法:
CourtVerdictResults GetVerdict (CourtVerdictRequest verdict);
我的Web服務實現了方法,像這樣一個精簡版:
CourtVerdictResults GetVerdict (String verdictCaseNumber);
在該方法的話,我去掉一些敏感數據,然後我應該返回CourtVerdictResults
對象。
但是這個對象是在第三方Web服務中定義的。我的項目引用該Web服務,以便了解該對象。但是我自己的Web服務沒有將該對象作爲DataContract。那麼當其他人開始使用我的Web服務時,如何返回這樣的對象呢?
我是否需要做一些特殊的事情,以便其他人實現我的Web服務時,他們的代碼自動知道CourtVerdictResults
?
這是唯一的方法嗎?因爲這個類非常龐大而且複雜,並且持有對其他對象的引用等。是不是有辦法告訴我的WCF服務它應該自動從該外部Web服務的'CourtVerdictResults'生成一個數據協定? – Vivendi 2013-03-27 13:11:33
第三方站點是否公開WSDL?如果是這樣的話:http://stackoverflow.com/questions/2582341/how-to-convert-wsdl-file-to-class-file – 2013-03-27 13:21:12
我想,如果我需要返回一個對象,然後將WSDL轉換爲一個類是最好的方式去(在這種情況下)。我所要做的就是將'[DataContract]'和[DataMemebers]'添加到我想要公開的屬性中。 – Vivendi 2013-03-27 13:42:42