我正在编写一个Web服务并且已经传递了一个显示为
的对象 <OfferDetail>
<OfferID>long</OfferID>
<InterestID>long</InterestID>
<RangeValue>string</RangeValue>
<Score>string</Score>
<Importance>string</Importance>
<Range>string</Range>
<ImportanceByOtherUser>string</ImportanceByOtherUser>
<RangeByOtherUser>string</RangeByOtherUser>
</OfferDetail>
在Web服务占位符中,但我不想要
<ImportanceByOtherUser>string</ImportanceByOtherUser>
<RangeByOtherUser>string</RangeByOtherUser>
有位置持有人。 注意:我无法从对象中删除它们
答案 0 :(得分:0)
如果您正在使用WCF,那么您可能已将DataContractAttribute
应用于您通过该服务返回其数据的对象。如果这是一个服务定义(我怀疑,但你没有发布任何C#代码),那么你将想要摆脱装饰这些属性的OperationContractAttribute
。但我相信它是后者而不是前者 - 所以我首先要寻找DataContractAttribute
。
HTH。
答案 1 :(得分:0)
只是想知道为什么?。
此成员是内部Web服务使用还是私有数据?我有时看到一些开发人员通过Web服务直接发布ORM对象。虽然它可能有效,但这通常是一个坏主意,因为你不想暴露整个对象,而只是暴露对象的一个子集,甚至是几个对象的组合(例如客户的主要细节+月份的最后订单)
因此,我强烈建议您重构代码。您应该创建一些专用于Web服务的数据输出的DTO对象,以及用于输入的命令对象。
您指定无法更改对象,但添加其他图层呢?
答案 2 :(得分:0)
答案 3 :(得分:0)
这是一个已知的错误。
http://archive.msdn.microsoft.com/WsdlHelpGenerator/Release/ProjectReleases.aspx?ReleaseId=412
下载该文件并在网络配置中添加以下内容
<webServices>
<wsdlHelpGenerator href="CustomWsdlHelpGenerator.aspx"/>
</webServices>
Href
应指向项目中下载的文件