C# 为外部对象创建DataContract

C# 为外部对象创建DataContract,c#,wcf,web-services,datacontract,C#,Wcf,Web Services,Datacontract,我目前正在C#NET中开发一个wcfweb服务。我对这方面还不太熟悉。我正在考虑某个方法应该如何实现,因为它需要返回一个“外部”对象作为DataContract。我不知道这是怎么回事 我的Web服务实现另一个第三方Web服务。这是因为我们不允许向公众公开所有方法和数据。因此,我们正在设计一个Web服务,它剥离出第三方Web服务公开的某些数据和方法 第三方Web服务公开了如下方法: CourtVerdictResults GetVerdict ( CourtVerdictRequest verdi

我目前正在C#NET中开发一个wcfweb服务。我对这方面还不太熟悉。我正在考虑某个方法应该如何实现,因为它需要返回一个“外部”对象作为DataContract。我不知道这是怎么回事

我的Web服务实现另一个第三方Web服务。这是因为我们不允许向公众公开所有方法和数据。因此,我们正在设计一个Web服务,它剥离出第三方Web服务公开的某些数据和方法

第三方Web服务公开了如下方法:

CourtVerdictResults GetVerdict ( CourtVerdictRequest verdict );
我的Web服务实现了该方法的精简版本,如下所示:

CourtVerdictResults GetVerdict ( String verdictCaseNumber );
在该方法中,我然后去掉一些敏感数据,然后返回
courtdirectionresults
对象

但是这个对象是在第三方Web服务中定义的。我的项目引用了该Web服务,因此它了解该对象。但我自己的Web服务没有将该对象作为DataContract。那么,当其他人开始使用我的Web服务时,我如何返回这样的对象呢


我是否需要做一些特殊的事情,以便当其他人实现我的Web服务时,他们的代码能够自动了解
courtdirectionresults

您可以创建与第三方对象相同的
courtdirectionresults
类(在不同的命名空间中,或者名称会冲突)(或与您希望的一样)


从他们的服务中检索第三方对象,将其值映射到您的对象(如果使用或类似的方法,则很简单)然后返回您的对象。

这是唯一的方法吗?因为该类非常大和复杂,并且包含对其他对象的引用等。难道没有办法告诉我的WCF服务,它应该从该外部Web服务从
CourtDecisionResults
自动生成数据契约吗?第三方网站是否公开WSDL?如果是,我会问如果我需要返回一个对象,那么将WSDL转换成一个类是最好的方法(在这种情况下)。然后我所要做的就是将
[DataContract]
[DataMemebers]
添加到我想要公开的属性中。