是否可以返回引用恰好为循环的对象,如父级中具有可访问其父级的子级列表的对象。使用c#webservices促进此类事情的最佳方法是什么?
答案 0 :(得分:1)
没有限制Web服务阻止这种情况,但.Net中的默认序列化程序不知道如何序列化循环引用。您需要编写自己的序列化/反序列化代码并将其插入WCF。
您可以在此处找到使用WCF执行此操作的示例:http://code.msdn.microsoft.com/WCF-Custom-Serialization-43b3ee7a
答案 1 :(得分:1)
如果您使用的是WCF,则.net 3.5中添加的新功能允许您在没有额外代码的情况下执行此操作,您可以通过将IsReference添加到datacontract属性来序列化循环引用。见http://msdn.microsoft.com/en-us/library/system.runtime.serialization.datacontractattribute.isreference.aspx