我目前正在使用C#.NET开发WCF Web服务。我对此很新。我正在考虑应该如何实现某个方法,因为它需要将“外部”对象作为DataContract返回。我不确定这是如何运作的。
我的Web服务实现了另一个第三方Web服务。原因是我们不允许向公众公开所有方法和数据。因此,我们正在设计一个Web服务,它会删除第三方Web服务公开的某些数据和方法。
第三方Web服务公开了这样的方法:
CourtVerdictResults GetVerdict ( CourtVerdictRequest verdict );
我的Web服务实现了该方法的精简版本,如下所示:
CourtVerdictResults GetVerdict ( String verdictCaseNumber );
在那个方法中我删除了一些敏感数据,之后我应该返回CourtVerdictResults
个对象。
但是此对象在第三方Web服务中定义。我的项目引用了Web Service,因此它知道该对象。但我自己的Web服务没有将该对象作为DataContract。那么当其他人开始使用我的Web服务时,如何返回这样的对象?
我是否需要做一些特别的事情,以便当其他人实施我的Web服务时,他们的代码会自动了解CourtVerdictResults
?
答案 0 :(得分:1)
您可以创建自己的CourtVerdictResults
类(在不同的命名空间中或名称将发生冲突)与第三方对象相同(或者与您希望的相同)。
从他们的服务中检索第三方对象,将其值映射到您的对象(如果使用ValueInjector或类似的东西,则很简单),然后返回您的对象。