【发布时间】:2015-10-12 11:33:56
【问题描述】:
我正在尝试从我的 WCF 函数调用中返回一个 object,如果我在我的 ServiceModel 中指定类型,则结果发送成功。
但是如果我发送一个对象显示我这样的消息:
wcf 测试客户端不支持此操作,因为它使用类型
代码:
[DataContract]
public class ServiceModel
{
[DataMember]
public int status { get; set; }
[DataMember]
public string message { get; set; }
[DataMember]
public requestdVM result { get; set; }
//public object result { get; set; }
}
问题类似于:WCF service: Returning custom objects 但作为解决方案,它们会更改类型
【问题讨论】:
-
能否提供
requestdVM代码? -
我正在阅读 [这篇文章][1] 并说:您不能返回“对象”,因为它不能使用 WCF 序列化。如果要重新调整对象,则它们必须是自定义序列化对象,并使用 [Serializable] 属性进行修饰。 [1]:pcreview.co.uk/forums/…@HenkaProgrammer
-
这可能会有所帮助 - stackoverflow.com/questions/5204893/…
-
问题是:这是否只发生在(有些受限的)WCF 测试客户端上?您是否尝试过自己制作一个小客户端应用程序来调用此 WCF 方法?
-
@marc_s 是的,这是一个简单的应用程序来测试它,也许问题是
xml的生成结果,如果我将复杂类型转换为其他内容类型,xml 可能很复杂并且可能因为对象中的连续性可能有交叉引用